4、spring+springMVC+mybaits+idea+maven

1、构建项目结构如下

4、spring+springMVC+mybaits+idea+maven

2、构建项目中的pom.xml文件中的依赖资源,里面包含ajax和分页插件的依赖哦

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
  1 <?xml version="1.0" encoding="UTF-8"?>
  2
  3 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5   <modelVersion>4.0.0modelVersion>
  6
  7   <groupId>comgroupId>
  8   <artifactId>ssm_day45_01artifactId>
  9   <version>1.0-SNAPSHOTversion>
 10   <packaging>warpackaging>
 11
 12   <name>ssm_day45_01 Maven Webappname>
 13
 14   <url>http://www.example.comurl>
 15
 16   <properties>
 17     <project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
 18     <maven.compiler.source>1.7maven.compiler.source>
 19     <maven.compiler.target>1.7maven.compiler.target>
 20   properties>
 21
 22   <dependencies>
 23     <dependency>
 24       <groupId>junitgroupId>
 25       <artifactId>junitartifactId>
 26       <version>4.11version>
 27     dependency>
 28
 29
 30
 31     <dependency>
 32       <groupId>org.springframeworkgroupId>
 33       <artifactId>spring-beansartifactId>
 34       <version>4.3.6.RELEASEversion>
 35     dependency>
 36
 37
 38
 39     <dependency>
 40       <groupId>org.springframeworkgroupId>
 41       <artifactId>spring-contextartifactId>
 42       <version>4.3.6.RELEASEversion>
 43     dependency>
 44
 45
 46
 47     <dependency>
 48       <groupId>org.springframeworkgroupId>
 49       <artifactId>spring-coreartifactId>
 50       <version>4.3.6.RELEASEversion>
 51     dependency>
 52
 53
 54
 55     <dependency>
 56       <groupId>org.springframeworkgroupId>
 57       <artifactId>spring-expressionartifactId>
 58       <version>4.3.6.RELEASEversion>
 59     dependency>
 60
 61
 62
 63     <dependency>
 64       <groupId>org.springframeworkgroupId>
 65       <artifactId>spring-aopartifactId>
 66       <version>4.3.6.RELEASEversion>
 67     dependency>
 68
 69
 70
 71     <dependency>
 72       <groupId>aopalliancegroupId>
 73       <artifactId>aopallianceartifactId>
 74       <version>1.0version>
 75     dependency>
 76
 77
 78
 79     <dependency>
 80       <groupId>org.aspectjgroupId>
 81       <artifactId>aspectjweaverartifactId>
 82       <version>1.8.10version>
 83     dependency>
 84
 85
 86
 87     <dependency>
 88       <groupId>log4jgroupId>
 89       <artifactId>log4jartifactId>
 90       <version>1.2.17version>
 91     dependency>
 92
 93
 94
 95     <dependency>
 96       <groupId>commons-logginggroupId>
 97       <artifactId>commons-loggingartifactId>
 98       <version>1.2version>
 99     dependency>
100
101
102
103     <dependency>
104       <groupId>org.springframeworkgroupId>
105       <artifactId>spring-jdbcartifactId>
106       <version>4.3.6.RELEASEversion>
107     dependency>
108
109
110
111     <dependency>
112       <groupId>org.springframeworkgroupId>
113       <artifactId>spring-ormartifactId>
114       <version>4.3.6.RELEASEversion>
115     dependency>
116
117
118
119     <dependency>
120       <groupId>org.springframeworkgroupId>
121       <artifactId>spring-txartifactId>
122       <version>4.3.6.RELEASEversion>
123     dependency>
124
125
126
127     <dependency>
128       <groupId>org.springframeworkgroupId>
129       <artifactId>spring-webartifactId>
130       <version>4.3.6.RELEASEversion>
131     dependency>
132
133
134
135     <dependency>
136       <groupId>org.springframeworkgroupId>
137       <artifactId>spring-webmvcartifactId>
138       <version>4.3.6.RELEASEversion>
139     dependency>
140
141
142
143     <dependency>
144       <groupId>org.mybatisgroupId>
145       <artifactId>mybatisartifactId>
146       <version>3.4.6version>
147     dependency>
148
149
150
151     <dependency>
152       <groupId>mysqlgroupId>
153       <artifactId>mysql-connector-javaartifactId>
154       <version>5.1.38version>
155     dependency>
156
157
158
159     <dependency>
160       <groupId>org.mybatisgroupId>
161       <artifactId>mybatis-springartifactId>
162       <version>1.3.2version>
163     dependency>
164
165
166     <dependency>
167       <groupId>javax.servletgroupId>
168       <artifactId>javax.servlet-apiartifactId>
169       <version>3.1.0version>
170     dependency>
171
172
173     <dependency>
174       <groupId>javax.servletgroupId>
175       <artifactId>jstlartifactId>
176       <version>1.2version>
177     dependency>
178
179
180
181     <dependency>
182       <groupId>taglibsgroupId>
183       <artifactId>standardartifactId>
184       <version>1.1.2version>
185     dependency>
186
187
188
189     <dependency>
190       <groupId>commons-iogroupId>
191       <artifactId>commons-ioartifactId>
192       <version>2.4version>
193     dependency>
194
195     <dependency>
196       <groupId>commons-fileuploadgroupId>
197       <artifactId>commons-fileuploadartifactId>
198       <version>1.3.3version>
199     dependency>
200
201
202     <dependency>
203       <groupId>com.fasterxml.jackson.coregroupId>
204       <artifactId>jackson-databindartifactId>
205       <version>2.9.6version>
206     dependency>
207
208     <dependency>
209       <groupId>com.fasterxml.jackson.coregroupId>
210       <artifactId>jackson-coreartifactId>
211       <version>2.9.6version>
212     dependency>
213
214     <dependency>
215       <groupId>com.fasterxml.jackson.coregroupId>
216       <artifactId>jackson-annotationsartifactId>
217       <version>2.9.6version>
218     dependency>
219
220
221     <dependency>
222       <groupId>com.github.pagehelpergroupId>
223       <artifactId>pagehelperartifactId>
224       <version>4.1.6version>
225     dependency>
226   dependencies>
227
228 project>

pom.xml

3、在项目的webapp目录下的WEB-INF下构建springmvc的xml文件,即springmvc-servlet.xml

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:aop="http://www.springframework.org/schema/aop"
 5        xmlns:context="http://www.springframework.org/schema/context"
 6        xmlns:tx="http://www.springframework.org/schema/tx"
 7        xmlns:mvc="http://www.springframework.org/schema/mvc"
 8        xsi:schemaLocation="http://www.springframework.org/schema/beans
 9        http://www.springframework.org/schema/beans/spring-beans.xsd
10        http://www.springframework.org/schema/aop
11        http://www.springframework.org/schema/aop/spring-aop.xsd
12        http://www.springframework.org/schema/context
13        http://www.springframework.org/schema/context/spring-context.xsd
14        http://www.springframework.org/schema/tx
15        http://www.springframework.org/schema/tx/spring-tx.xsd
16        http://www.springframework.org/schema/mvc
17        http://www.springframework.org/schema/mvc/spring-mvc.xsd
18 ">
19
20     <mvc:annotation-driven/>
21
22     <context:component-scan base-package="com"/>
23
24     <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
25          <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
26          <property name="url" value="jdbc:mysql://localhost:3306/ar"/>
27          <property name="username" value="root"/>
28          <property name="password" value="123456"/>
29     bean>
30
31     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
32          <property name="dataSource" ref="dataSource"/>
33     bean>
34
35     <tx:annotation-driven transaction-manager="transactionManager"/>
36
37     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
38           <property name="dataSource" ref="dataSource"/>
39
40           <property name="typeAliasesPackage" value="com.pojo"/>
41
42           <property name="mapperLocations" value="classpath:mapper/*.xml"/>
43     bean>
44
45     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
46         <property name="basePackage" value="com.mapper"/>
47     bean>
48
49 beans>

springmvc-servlet.xml

4、在项目的webapp目录下的WEB-INF下构建web的xml文件,即web.xml

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <!DOCTYPE web-app PUBLIC
 2  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 3  "http://java.sun.com/dtd/web-app_2_3.dtd" >
 4
 5 <web-app>
 6
 7   <filter>
 8     <filter-name>characterfilter-name>
 9     <filter-class>org.springframework.web.filter.CharacterEncodingFilterfilter-class>
10     <init-param>
11       <param-name>encodingparam-name>
12       <param-value>UTF-8param-value>
13     init-param>
14   filter>
15   <filter-mapping>
16     <filter-name>characterfilter-name>
17     <url-pattern>/url-pattern>
18   filter-mapping>
19
20
21    <servlet>
22      <servlet-name>springmvcservlet-name>
23      <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
24    servlet>
25   <servlet-mapping>
26     <servlet-name>springmvcservlet-name>
27     <url-pattern>.dourl-pattern>
28   servlet-mapping>
29
30   <welcome-file-list>
31     <welcome-file>show.dowelcome-file>
32   welcome-file-list>
33 web-app>

web.xml

5、在java目录下的com.pojo包下构建Emp.java和Dept.java文件

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.pojo;
 2 import org.springframework.stereotype.Component;
 3
 4 import java.io.Serializable;
 5 import java.util.List;
 6 /**
 7  * 一方引用多方list集合
 8  */
 9 @Component
10 public class Dept implements Serializable {
11   private Integer deptno   ;
12   private String  dname    ;
13   private String  loc          ;
14
15   public Dept() {
16   }
17
18   public Dept(Integer deptno, String dname, String loc) {
19     this.deptno = deptno;
20     this.dname = dname;
21     this.loc = loc;
22   }
23
24   public Integer getDeptno() {
25     return deptno;
26   }
27
28   public void setDeptno(Integer deptno) {
29     this.deptno = deptno;
30   }
31
32
33   public String getDname() {
34     return dname;
35   }
36
37   public void setDname(String dname) {
38     this.dname = dname;
39   }
40
41
42   public String getLoc() {
43     return loc;
44   }
45
46   public void setLoc(String loc) {
47     this.loc = loc;
48   }
49
50   @Override
51   public String toString() {
52     return "Dept{" +
53             "deptno=" + deptno +
54             ", dname='" + dname + '\'' +
55             ", loc='" + loc + '\'' +
56             '}';
57   }
58 }

Dept.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.pojo;
  2
  3 import org.springframework.stereotype.Component;
  4
  5 import java.io.Serializable;
  6
  7 /**
  8  * 多方引用一方对象
  9  */
 10 @Component
 11 public class Emp implements Serializable{
 12   private Integer empno             ;
 13   private String  ename           ;
 14   private String  job         ;
 15   private Integer mgr           ;
 16   private String  hiredate           ;
 17   private Double  sal         ;
 18   private Double  comm               ;
 19   private Dept dept;
 20
 21   public Emp() {
 22   }
 23
 24   public Emp(Integer empno, String ename, String job, Integer mgr, String hiredate, Double sal, Double comm, Dept dept) {
 25     this.empno = empno;
 26     this.ename = ename;
 27     this.job = job;
 28     this.mgr = mgr;
 29     this.hiredate = hiredate;
 30     this.sal = sal;
 31     this.comm = comm;
 32     this.dept = dept;
 33   }
 34
 35   public Integer getEmpno() {
 36     return empno;
 37   }
 38
 39   public void setEmpno(Integer empno) {
 40     this.empno = empno;
 41   }
 42
 43
 44   public String getEname() {
 45     return ename;
 46   }
 47
 48   public void setEname(String ename) {
 49     this.ename = ename;
 50   }
 51
 52
 53   public String getJob() {
 54     return job;
 55   }
 56
 57   public void setJob(String job) {
 58     this.job = job;
 59   }
 60
 61
 62   public Integer getMgr() {
 63     return mgr;
 64   }
 65
 66   public void setMgr(Integer mgr) {
 67     this.mgr = mgr;
 68   }
 69
 70
 71   public String getHiredate() {
 72     return hiredate;
 73   }
 74
 75   public void setHiredate(String hiredate) {
 76     this.hiredate = hiredate;
 77   }
 78
 79
 80   public Double getSal() {
 81     return sal;
 82   }
 83
 84   public void setSal(Double sal) {
 85     this.sal = sal;
 86   }
 87
 88
 89   public Double getComm() {
 90     return comm;
 91   }
 92
 93   public void setComm(Double comm) {
 94     this.comm = comm;
 95   }
 96
 97   public Dept getDept() {
 98     return dept;
 99   }
100
101   public void setDept(Dept dept) {
102     this.dept = dept;
103   }
104
105   @Override
106   public String toString() {
107     return "Emp{" +
108             "empno=" + empno +
109             ", ename='" + ename + '\'' +
110             ", job='" + job + '\'' +
111             ", mgr=" + mgr +
112             ", hiredate='" + hiredate + '\'' +
113             ", sal=" + sal +
114             ", comm=" + comm +
115             ", dept=" + dept +
116             '}';
117   }
118 }

Emp.java

6、在java目录下的com.mapper包下构建映射接口EmpMapper.java和DeptMapper.java文件

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.mapper;
2 import com.pojo.Dept;
3 import org.springframework.stereotype.Repository;
4
5 import java.util.List;
6 @Repository
7 public interface DeptMapper {
8     List selectAllDept();
9 }

DeptMapper.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.mapper;
 2 import com.pojo.Emp;
 3 import org.springframework.stereotype.Repository;
 4
 5 import java.util.List;
 6 @Repository
 7 public interface EmpMapper {
 8     List selectEmp(Emp emp);
 9     int insertEmp(Emp emp);
10     int updateEmp(Emp emp);
11     int deleteEmp(Emp emp);
12 }

EmpMapper.java

7、在java目录下的com.service包下构建2个业务层接口EmpService.java 和DeptService.java文件,2个业务层接口实现类EmpServiceImpl.java 和DeptServiceImpl.java文件

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.service;
2
3 import com.pojo.Dept;
4
5 import java.util.List;
6
7 public interface DeptService {
8     List downOption();
9 }

DeptService.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.service;
 2
 3 import com.pojo.Emp;
 4
 5 import java.util.List;
 6
 7 public interface EmpService {
 8     List show(Emp emp);
 9     int add(Emp emp);
10     int edit(Emp emp);
11     int del(Emp emp);
12 }

EmpService.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.service;
 2
 3 import com.mapper.DeptMapper;
 4 import com.pojo.Dept;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Service;
 7
 8 import java.util.List;
 9 @Service
10 public class DeptServiceImpl implements DeptService{
11     @Autowired
12     private DeptMapper deptMapper;
13
14
15     @Override
16     public List downOption() {
17         return deptMapper.selectAllDept();
18     }
19 }

DeptServiceImpl.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.service;
 2
 3 import com.mapper.EmpMapper;
 4 import com.pojo.Emp;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Service;
 7
 8 import javax.annotation.Resource;
 9 import java.util.List;
10 /*
11 @Service的功能等同于代理对象在spring的xml文件中动态添加bean节点,
12 如果不指定名称,则底层代理在构建bean节点的时候id是类的第一个首字母小写
13 14 @Service(value = "empse")的功能等同于代理对象在spring的xml文件中动态添加id值为empse的bean节点
15 16 */
17 @Service
18 public class EmpServiceImpl implements EmpService {
19     /*
20     @Autowired是spring的资源包下注解,按照对象的类型进行自动注入,
21     和对象名称无关,只要类型是匹配的,代理就会在你需要的时候给你注入对象值
22     @Resource是javax包下的注解,按照对象属性名进行注入,
23     和对象名称关系密切,如果对象名称不匹配,则不能完成注入,会报错
24     总结:相比而言,使用@Resource的出错记录更大,因此我们常规选择使用@Autowired
25      */
26     @Autowired
27     private EmpMapper empMapper;
28
29     @Override
30     public List show(Emp emp) {
31         return empMapper.selectEmp(emp);
32     }
33
34     @Override
35     public int add(Emp emp) {
36         return empMapper.insertEmp(emp);
37     }
38
39     @Override
40     public int edit(Emp emp) {
41         return empMapper.updateEmp(emp);
42     }
43
44     @Override
45     public int del(Emp emp) {
46         return empMapper.deleteEmp(emp);
47     }
48 }

EmpServiceImpl.java

8、在java目录下的com.controller包下构建1个核心控制层类CenterController.java

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 package com.controller;
 2
 3 import com.pojo.Dept;
 4 import com.pojo.Emp;
 5 import com.service.DeptService;
 6 import com.service.EmpService;
 7 import org.springframework.beans.factory.annotation.Autowired;
 8 import org.springframework.stereotype.Controller;
 9 import org.springframework.ui.Model;
10 import org.springframework.web.bind.annotation.RequestMapping;
11 import javax.servlet.http.HttpServletRequest;
12 import javax.servlet.http.HttpServletResponse;
13 import javax.servlet.http.HttpSession;
14 import java.util.List;
15 @Controller
16 public class CenterController {
17     @Autowired
18     private DeptService deptService;
19
20     @Autowired
21     private EmpService empService;
22
23     @RequestMapping("/show.do")
24     public String showData(HttpSession session, Model model){
25         List deptlist=deptService.downOption();
26         session.setAttribute("deptlist",deptlist);
27
28          List emplist=empService.show(new Emp());
29 //        功能等同于request.setAttribute(key,value)
30         model.addAttribute("emplist",emplist);
31
32         //默认跳转使用转发
33         return "main.jsp";
34     }
35
36
37     @RequestMapping("/option.do")
38     public String showOption(Emp emp,Model model){
39         List emplist=empService.show(emp);
40
41 //        功能等同于request.setAttribute(key,value)
42         model.addAttribute("emplist",emplist);
43         model.addAttribute("deptno",emp.getDept().getDeptno());
44
45         //默认跳转使用转发
46         return "main.jsp";
47     }
48
49     @RequestMapping("/info.do")
50     public String showInfo(Emp emp,Model model){
51         //根据主键编号查询只有一条数据
52         Emp emp2=empService.show(emp).get(0);
53
54 //        功能等同于request.setAttribute(key,value)
55         model.addAttribute("emp2",emp2);
56
57         //默认跳转使用转发
58         return "edit.jsp";
59     }
60     @RequestMapping("/edit.do")
61     public String edit(Emp emp){
62         //根据主键编号查询只有一条数据
63         System.out.println(empService.edit(emp)>0?"edit success":"edit fail");;
64         //使用重定向跳转
65         return "redirect:/show.do";
66     }
67
68     @RequestMapping("/add.do")
69     public String add(Emp emp){
70         //根据主键编号查询只有一条数据
71         System.out.println(empService.add(emp)>0?"add success":"add fail");;
72         //使用重定向跳转
73         return "redirect:/show.do";
74     }
75
76     @RequestMapping("/del.do")
77     public String del(Emp emp){
78         //根据主键编号查询只有一条数据
79         System.out.println(empService.del(emp)>0?"del success":"del fail");;
80         //使用重定向跳转
81         return "redirect:/show.do";
82     }
83 }

CenterController.java

9、在resouces目录下构建1个系统日志记录文件log4j.properties

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
1 log4j.rootLogger=DEBUG, Console
 2 #Console
 3 log4j.appender.Console=org.apache.log4j.ConsoleAppender
 4 log4j.appender.Console.layout=org.apache.log4j.PatternLayout
 5 log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
 6
 7 log4j.logger.org.apache=INFO
 8 log4j.logger.java.sql.ResultSet=INFO
 9 log4j.logger.java.sql.Connection=DEBUG
10 log4j.logger.java.sql.Statement=DEBUG
11 log4j.logger.java.sql.PreparedStatement=DEBUG

log4j.properties

10、在resouces目录下的mapper目录下构建2个映射xml文件DeptMapper.xml和EmpMapper.xml

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <?xml version="1.0" encoding="UTF-8" ?>
 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 3
 4
 5
 6 <mapper namespace="com.mapper.DeptMapper">
 7      <select id="selectAllDept" resultType="Dept">
 8           select * from dept
 9      select>
10 mapper>

DeptMapper.xml

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
  1 <?xml version="1.0" encoding="UTF-8" ?>
  2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 <mapper namespace="com.mapper.EmpMapper">
  4
 21
 22
 23
 24     <select id="selectEmp" resultMap="empmap" parameterType="Emp">
 25          select d.dname,d.loc,e.* from emp e,dept d where e.deptno=d.deptno
 26          <if test="empno!=null">
 27              and e.empno=#{empno}
 28          if>
 29          <if test="ename!=null">
 30              and e.ename=#{ename}
 31          if>
 32          <if test="job!=null">
 33              and e.job=#{job}
 34          if>
 35          <if test="dept!=null and dept.deptno!=null">
 36              and e.deptno=#{dept.deptno}
 37          if>
 38     select>
 39
 40     <resultMap id="empmap" type="Emp">
 41
 42         <id column="EMPNO" property="empno"/>
 43         <result column="ENAME" property="ename"/>
 44         <result column="JOB " property="job"/>
 45         <result column="MGR" property="mgr"/>
 46         <result column="HIREDATE" property="hiredate"/>
 47         <result column="SAL" property="sal"/>
 48         <result column="COMM" property="comm"/>
 49
 50
 51
 52
 53
 54         <association property="dept" javaType="Dept" column="DEPTNO">
 55
 56             <id column="DEPTNO" property="deptno"/>
 57             <result column="DNAME" property="dname"/>
 58             <result column="LOC" property="loc"/>
 59         association>
 60     resultMap>
 61
 62     <insert id="insertEmp" parameterType="Emp">
 63          INSERT  INTO emp(empno, ename, job, mgr, hiredate, sal, comm, deptno) VALUES
 64          (#{empno},#{ename},#{job},#{mgr},#{hiredate},#{sal},#{comm},#{dept.deptno})
 65     insert>
 66
 67
 68     <update id="updateEmp" parameterType="Emp">
 69         UPDATE emp
 70         <set>
 71             <if test="ename!=null">
 72                 ename=#{ename} ,
 73             if>
 74             <if test="job!=null">
 75                 job=#{job} ,
 76             if>
 77             <if test="mgr!=null">
 78                    mgr=#{mgr} ,
 79             if>
 80             <if test="hiredate!=null">
 81                 hiredate=#{hiredate} ,
 82             if>
 83             <if test="sal!=null">
 84                  sal=#{sal},
 85             if>
 86             <if test="comm!=null">
 87                comm=#{comm},
 88             if>
 89             <if test="dept!=null and dept.deptno!=null">
 90                deptno=#{dept.deptno}  ,
 91             if>
 92         set>
 93         <include refid="wherecondition"/>
 94     update>
 95
 96     <delete id="deleteEmp" parameterType="Emp">
 97         delete from emp
 98         <include refid="wherecondition"/>
 99     delete>
100
101
102    <sql id="wherecondition">
103        <where>
104            <if test="empno!=null">
105                empno=#{empno}
106            if>
107        where>
108    sql>
109
110 mapper>

EmpMapper.xml

11、在项目的webapp目录下构建main.jsp

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <%<>@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 2 <%<>@ page contentType="text/html;charset=UTF-8" language="java" %>
 3 <%<>@ page isELIgnored="false" %>
 4 <html>
 5 <head>
 6     <title>首页title>
 7 head>
 8 <body>
 9    <a href="add.jsp">添加a>
10     <p>
11       <form action="option.do" method="post">
12          <span>部门:span>
13         <select name="dept.deptno">
14             <option value="-1">--请选择--option>
15             <c:forEach var="i" items="${deptlist}">
16                   <c:choose>
17                       <c:when test="${deptno eq i.deptno}">
18                          <option value="${i.deptno}" selected="selected">${i.dname}option>
19                       c:when>
20                       <c:otherwise>
21                          <option value="${i.deptno}">${i.dname}option>
22                       c:otherwise>
23                   c:choose>
24             c:forEach>
25         select>
26         <input type="submit" value="查询">
27       form>
28     p>
29     <table>
30         <tr>
31             <th>员工编号th>
32             <th>员工姓名th>
33             <th>员工薪资th>
34             <th>部门名称th>
35             <th>操作th>
36         tr>
37         <c:forEach var="i" items="${emplist}">
38              <tr>
39                  <td>${i.empno}td>
40                  <td>${i.ename}td>
41                  <td>${i.sal}td>
42                  <td>${i.dept.dname}td>
43                  <td>
44                      <a href="info.do?empno=${i.empno}">修改a>
45                      |
46                      <a href="del.do?empno=${i.empno}">删除a>
47                  td>
48              tr>
49         c:forEach>
50     table>
51 body>
52 html>

main.jsp

12、在项目的webapp目录下构建edit.jsp

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <%<>@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 2 <%<>@ page contentType="text/html;charset=UTF-8" language="java" %>
 3 <%<>@ page isELIgnored="false" %>
 4 <html>
 5 <head>
 6     <title>编辑信息title>
 7 head>
 8 <body>
 9    <fieldset>
10        <legend>编辑员工信息legend>
11        <form action="edit.do?empno=${emp2.empno}" method="post">
12            <table>
13                <tr>
14                    <th>部门名称:th>
15                    <td>
16                        <select name="dept.deptno">
17                            <option value="-1">--请选择--option>
18                            <c:forEach var="i" items="${deptlist}">
19                                <c:choose>
20                                    <c:when test="${emp2.dept.deptno eq i.deptno}">
21                                        <option value="${i.deptno}" selected="selected">${i.dname}option>
22                                    c:when>
23                                    <c:otherwise>
24                                        <option value="${i.deptno}">${i.dname}option>
25                                    c:otherwise>
26                                c:choose>
27                            c:forEach>
28                        select>
29                    td>
30                tr>
31                <tr>
32                    <th>员工姓名:th>
33                    <td><input type="text" name="ename" value="${emp2.ename}"/>td>
34                tr>
35                <tr>
36                    <th>员工薪资:th>
37                    <td><input type="text" name="sal" value="${emp2.sal}"/>td>
38                tr>
39                <tr>
40                    <td colspan="2" align="center">
41                        <input type="submit" value="提交"/>
42                        <input type="reset" value="重置"/>
43                    td>
44                tr>
45            table>
46        form>
47    fieldset>
48
49 body>
50 html>

edit.jsp

13、在项目的webapp目录下构建add.jsp

4、spring+springMVC+mybaits+idea+maven4、spring+springMVC+mybaits+idea+maven
 1 <%<>@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
 2 <%<>@ page contentType="text/html;charset=UTF-8" language="java" %>
 3 <%<>@ page isELIgnored="false" %>
 4 <html>
 5 <head>
 6     <title>添加信息title>
 7 head>
 8 <body>
 9    <fieldset>
10        <legend>添加员工信息legend>
11        <form action="add.do" method="post">
12            <table>
13                <tr>
14                    <th>部门名称:th>
15                    <td>
16                        <select name="dept.deptno">
17                            <option value="-1">--请选择--option>
18                            <c:forEach var="i" items="${deptlist}">
19                                <option value="${i.deptno}">${i.dname}option>
20                            c:forEach>
21                        select>
22                    td>
23                tr>
24                <tr>
25                    <th>员工编号:th>
26                    <td><input type="text" name="empno"/>td>
27                tr>
28                <tr>
29                    <th>员工姓名:th>
30                    <td><input type="text" name="ename" />td>
31                tr>
32                <tr>
33                    <th>员工薪资:th>
34                    <td><input type="text" name="sal" />td>
35                tr>
36                <tr>
37                    <td colspan="2" align="center">
38                        <input type="submit" value="提交"/>
39                        <input type="reset" value="重置"/>
40                    td>
41                tr>
42            table>
43        form>
44    fieldset>
45 body>
46 html>

add.jsp

14、部署启动项目查看效果

4、spring+springMVC+mybaits+idea+maven

4、spring+springMVC+mybaits+idea+maven

4、spring+springMVC+mybaits+idea+maven

4、spring+springMVC+mybaits+idea+maven

4、spring+springMVC+mybaits+idea+maven

4、spring+springMVC+mybaits+idea+maven

此文章为原创,转载请注明出处!需要本案例源码,理论讲解视频,代码操作视频的,请私信联系作者!

Original: https://www.cnblogs.com/holly8/p/16602450.html
Author: 红酒人生
Title: 4、spring+springMVC+mybaits+idea+maven

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609126/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球