项目基本结构
导入jar pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cheng</groupId>
<artifactId>ssm</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>ssm Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<!--springjdbc-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.4</version>
</dependency>
<!--spring和mybatis整合的依赖-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.6</version>
</dependency>
<!--webmvc得依赖-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.4</version>
</dependency>
<!--lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.18</version>
</dependency>
<!--druid数据源-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.9</version>
</dependency>
<!--mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.25</version>
</dependency>
<!--mybatis的依赖-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<!--mybatis代码生成器-->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.4.0</version>
</dependency>
<!--jsp得依赖-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
<!--jackson依赖-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.4</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.72</version>
</dependency>
<!--分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.11</version>
</dependency>
</dependencies>
</project>
generator 代码生成器
gertor.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<classPathEntry location="D:\repMaven\mysql\mysql-connector-java\8.0.25\mysql-connector-java-8.0.25.jar" />
<context id="DB2Tables" targetRuntime="MyBatis3">
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/mybatis?serverTimezone=Asia/Shanghai"
userId="root"
password="123456">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<javaModelGenerator targetPackage="com.cheng.entity" targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<sqlMapGenerator targetPackage="mapper" targetProject="./src/main/resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<javaClientGenerator type="XMLMAPPER" targetPackage="com.cheng.dao" targetProject="./src/main/java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<table tableName="tbl_dept" domainObjectName="Dept"
enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" catalog="mybatis">
<property name="useActualColumnNames" value="false"></property>
<property name="ignoreQualifiersAtRuntime" value="true"></property>
</table>
<table tableName="tbl_emp" domainObjectName="Emp"
enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" catalog="mybatis">
<property name="useActualColumnNames" value="false"></property>
<property name="ignoreQualifiersAtRuntime" value="true"></property>
</table>
</context>
</generatorConfiguration>
代码生成器 测试类
public class Test {
public static void main(String[] args) throws Exception{
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File("gertor.xml");
ConfigurationParser cp = new ConfigurationParser(warnings);
Configuration config = cp.parseConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
myBatisGenerator.generate(null);
}
}
**引入layui文件
index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>员工表</title>
<link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/layui/css/layui.css"/>
<script type="text/javascript" src="${pageContext.request.contextPath}/layui/layui.js"></script>
</head>
<body>
<%--表格--%>
<table class="layui-hide" id="test" lay-filter="test"></table>
<%--添加按钮--%>
<script type="text/html" id="toolbarDemo" lay-filter="toolbarDemo" >
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="add">添加</button>
</div>
</script>
<%--修改 删除--%>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="update">修改</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
<%--修改form--%>
<form style="display: none" class="layui-form" action="" lay-filter="addform" id="addform">
<%--隐藏id--%>
<input type="hidden" name="empid"/>
<%--姓名--%>
<div class="layui-form-item">
<label class="layui-form-label">员工名字</label>
<div class="layui-input-inline">
<input type="text" name="empname" lay-verify="required" autocomplete="off" placeholder="请输入名字" class="layui-input">
</div>
</div>
<%--性别--%>
<div class="layui-form-item">
<label class="layui-form-label">性别</label>
<div class="layui-input-inline">
<input type="radio" name="gender" value="男" title="男" checked="">
<input type="radio" name="gender" value="女" title="女">
</div>
<%--邮箱--%>
<div class="layui-form-item">
<label class="layui-form-label">邮箱</label>
<div class="layui-input-inline">
<input type="text" name="email" lay-verify="email" placeholder="邮箱" class="layui-input">
</div>
</div>
<%--<div class="layui-form-item">
<label class="layui-form-label">部门</label>
<div class="layui-input-block">
<input type="text" name="dept" placeholder="部门" class="layui-input">
</div>
</div>--%>
<%-- 部门--%>
<div class="layui-form-item">
<label class="layui-form-label">部门</label>
<div class="layui-input-inline">
<select name="dId" lay-filter="dId" id="dId">
<option value="请选则部门"></option>
</select>
</div>
</div
<%--提交重置--%>
<div class="layui-form-item">
<div class="layui-input-block">
<%-- input form表单提交可以添加转页面 button只能将数据提交到当前页面--%>
<input type="button" class="layui-btn" lay-submit lay-filter="demo1" id="demo1" value="立即提交"/>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
<script>
layui.use(['table', 'layer', 'jquery', 'form'], function () {
var table = layui.table;
var layer = layui.layer;
var $ = layui.jquery;
var form = layui.form;
table.render({
id: "test"
, elem: '#test'
, url: '${pageContext.request.contextPath}/findAllEmp'
, cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
, toolbar: '#toolbarDemo'
, cols: [[
{field: 'empid', width: 80, title: 'ID', sort: true}
, {field: 'empname', width: 80, title: '员工姓名'}
, {field: 'gender', width: 80, title: '性别', sort: true}
, {field: 'email', width: 80, title: '邮箱'}
, {
field: 'deptname', width: 80, title: '部门名',
templet: function (data) {
return data.dept.deptname;
}
}
, {fixed: 'right', title: '操作', toolbar: '#barDemo', width: 150}
]],
page: true,
limit: 5,
limits: [5, 10, 15, 20]
});
//定义表单校验
form.verify({
required:function (value,item){
if(value.length<3 || value.length>12){
return "账号必须在[3-12]个字符之间";
}
/* $.ajax({
url:"${pageContext.request.contextPath}/cname",
data:{"empname":value},
success:function (result) {
if (result.code==200){
return "该账号已经被注册";
}
},type: "post",
dataType:"json"
})*/
}
})
//添加修改form封装表单
function openap(title, data) {
//清空数据
$("#addform")[0].reset();
//调用查询所有部门
getAllDept();
layer.open({
type: 1,
title: title,
area: ['500px', '500px'],
//添加表单
content: $("#addform")
})
form.val("addform", data);
}
//添加事件
table.on("toolbar(test)",function (obj){
switch (obj.event){
case 'add':
openap("添加用户",null);
break;
};
});
//提交事件
form.on('submit(demo1)',function (data){
$.ajax({
url:"${pageContext.request.contextPath}/svae",
data: data.field,
success:function (result) {
layer.closeAll();
if(result.code===200){
layer.msg(result.msg,{icon:1})
table.reload('test')
}else{
layer.msg(result.msg,{icon:5})
}
},dataType:'json'
})
})
//监听行工具事件
table.on('tool(test)', function (obj) {
var data = obj.data;
// alert(data);
if (obj.event === 'del') {
layer.confirm("删除此行么???",function () {
$.ajax({
url: "${pageContext.request.contextPath}/del",
data: "empId=" + data.empid,
method: "post",
async: false,
success: function (msg) {
if (msg.code == 200) {
layer.closeAll();
table.reload('test');
}
},dataType:"json"
})
});
}
if (obj.event == "update") {
openap("修改用户", data);
}
});
// 获取所有部门信息
function getAllDept(){
$.ajax({
url: "${pageContext.request.contextPath}/getByDept",
method: "post",
async: false,
success:function (result){
var depts=result.data;
var str="";
for(var i=0;i<depts.length;i++){
//创建option标签<option value='1'>运维部</option>
// var option = $("<option>").attr("value",depts[i].deptid).html(depts[i].deptname);
// $("#dId").append(option)
str=str+"<option value='"+depts[i].deptid+"'>"+depts[i].deptname+"</option>";
}
console.log(str)
$("#dId").html(str)
form.render('select','addform'); //重新渲染标签 select标签
},dataType:"json"
})
}
});
</script>
</body>
</html>
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<!-- 加载springmvc-->
<servlet>
<servlet-name>srpingmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>srpingmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- 加载spring配置文件-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 指定加载的配置文件-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:Spring.xml</param-value>
</context-param>
</web-app>
springmvc.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc https://www.springframework.org/schema/mvc/spring-mvc.xsd http://www.alibaba.com/schema/stat http://www.alibaba.com/schema/stat.xsd">
<!-- 扫描包-->
<context:component-scan base-package="com.cheng"/>
<!-- 静态资源放行-->
<mvc:default-servlet-handler/>
<mvc:annotation-driven/>
<!-- 视图解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/view/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
srping.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
https://www.springframework.org/schema/context/spring-context.xsd">
<!-- 导入属性文件-->
<context:property-placeholder location="classpath:db.properties"/>
<!-- 配置数据源-->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driverName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<!--配置sqlSessionFactory: spring整合mybatis时把mybatis配置文件中的内容封装成一个类SqlSessionFactoryBean-->
<bean class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<!--指定映射文件所在的路径-->
<property name="mapperLocations" value="classpath:mapper/*.xml"/>
<!-- 传入PageHelper的插件 -->
<property name="plugins">
<array>
<!-- 传入插件的对象 -->
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties">
<props>
<prop key="reasonable">true</prop>
</props>
</property>
</bean>
</array>
</property>
</bean>
<!--为dao生成代理实现类-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!--为指定包下的接口生成实现类-->
<property name="basePackage" value="com.cheng.dao"/>
</bean>
</beans>
db.properties
jdbc.driverName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=Asia/Shanghai
jdbc.username=root
jdbc.password=123456
EmpMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cheng.dao.EmpMapper">
<resultMap id="BaseResultMap" type="com.cheng.entity.Emp">
<id column="empId" jdbcType="INTEGER" property="empid" />
<result column="empName" jdbcType="VARCHAR" property="empname" />
<result column="gender" jdbcType="CHAR" property="gender" />
<result column="email" jdbcType="VARCHAR" property="email" />
<result column="d_Id" jdbcType="INTEGER" property="dId" />
<association property="dept" javaType="com.cheng.entity.Dept">
<id property="deptid" column="deptId"/>
<result property="deptname" column="deptName"/>
</association>
</resultMap>
<sql id="Base_Column_List">
empId, empName, gender, email, d_Id
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tbl_emp
where empId = #{empid,jdbcType=INTEGER}
</select>
<!-- 查询所有员工信息-->
<select id="findAllEmp" resultMap="BaseResultMap">
select * from tbl_emp e join tbl_dept d on e.d_Id=d.deptId
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from tbl_emp
where empId = #{empid,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.cheng.entity.Emp">
insert into tbl_emp (empId, empName, gender,
email, d_Id)
values (#{empid,jdbcType=INTEGER}, #{empname,jdbcType=VARCHAR}, #{gender,jdbcType=CHAR},
#{email,jdbcType=VARCHAR}, #{dId,jdbcType=INTEGER})
</insert>
<insert id="insertSelective" parameterType="com.cheng.entity.Emp">
insert into tbl_emp
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="empid != null">
empId,
</if>
<if test="empname != null">
empName,
</if>
<if test="gender != null">
gender,
</if>
<if test="email != null">
email,
</if>
<if test="dId != null">
d_Id,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="empid != null">
#{empid,jdbcType=INTEGER},
</if>
<if test="empname != null">
#{empname,jdbcType=VARCHAR},
</if>
<if test="gender != null">
#{gender,jdbcType=CHAR},
</if>
<if test="email != null">
#{email,jdbcType=VARCHAR},
</if>
<if test="dId != null">
#{dId,jdbcType=INTEGER},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.cheng.entity.Emp">
update tbl_emp
<set>
<if test="empname != null">
empName = #{empname,jdbcType=VARCHAR},
</if>
<if test="gender != null">
gender = #{gender,jdbcType=CHAR},
</if>
<if test="email != null">
email = #{email,jdbcType=VARCHAR},
</if>
<if test="dId != null">
d_Id = #{dId,jdbcType=INTEGER},
</if>
</set>
where empId = #{empid,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.cheng.entity.Emp">
update tbl_emp
set empName = #{empname,jdbcType=VARCHAR},
gender = #{gender,jdbcType=CHAR},
email = #{email,jdbcType=VARCHAR},
d_Id = #{dId,jdbcType=INTEGER}
where empId = #{empid,jdbcType=INTEGER}
</update>
<update id="ap">
update tbl_emp
<set>
<if test="empname != null">
empName = #{empname,jdbcType=VARCHAR},
</if>
<if test="gender != null">
gender = #{gender,jdbcType=CHAR},
</if>
<if test="email != null">
email = #{email,jdbcType=VARCHAR},
</if>
<if test="dId != null">
d_Id = #{dId,jdbcType=INTEGER},
</if>
</set>
where empId = #{empid,jdbcType=INTEGER}
</update>
<!-- 删除行-->
<delete id="del">
delete from tbl_emp
where empId = #{empid}
</delete>
</mapper>
DeptMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cheng.dao.DeptMapper">
<resultMap id="BaseResultMap" type="com.cheng.entity.Dept">
<id column="deptId" jdbcType="INTEGER" property="deptid" />
<result column="deptName" jdbcType="VARCHAR" property="deptname" />
</resultMap>
<sql id="Base_Column_List">
deptId, deptName
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tbl_dept
where deptId = #{deptid,jdbcType=INTEGER}
</select>
<!-- 查询所有部门信息-->
<select id="selectAll" resultType="com.cheng.entity.Dept">
select <include refid="Base_Column_List"/> from tbl_dept
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from tbl_dept
where deptId = #{deptid,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.cheng.entity.Dept">
insert into tbl_dept (deptId, deptName)
values (#{deptid,jdbcType=INTEGER}, #{deptname,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.cheng.entity.Dept">
insert into tbl_dept
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="deptid != null">
deptId,
</if>
<if test="deptname != null">
deptName,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="deptid != null">
#{deptid,jdbcType=INTEGER},
</if>
<if test="deptname != null">
#{deptname,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.cheng.entity.Dept">
update tbl_dept
<set>
<if test="deptname != null">
deptName = #{deptname,jdbcType=VARCHAR},
</if>
</set>
where deptId = #{deptid,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.cheng.entity.Dept">
update tbl_dept
set deptName = #{deptname,jdbcType=VARCHAR}
where deptId = #{deptid,jdbcType=INTEGER}
</update>
</mapper>
TableLayui类
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TableLayui {
private Integer code;
private String msg;
private Long count;
private Object data;
}
Reust类
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Reust {
Integer code;
String msg;
Object data;
}
Emp类
package com.cheng.entity;
public class Emp {
private Integer empid;
private String empname;
private String gender;
private String email;
private Integer dId;
private Dept dept;
public Dept getDept() {
return dept;
}
public void setDept(Dept dept) {
this.dept = dept;
}
public Integer getEmpid() {
return empid;
}
public void setEmpid(Integer empid) {
this.empid = empid;
}
public String getEmpname() {
return empname;
}
public void setEmpname(String empname) {
this.empname = empname == null ? null : empname.trim();
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender == null ? null : gender.trim();
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email == null ? null : email.trim();
}
public Integer getdId() {
return dId;
}
public void setdId(Integer dId) {
this.dId = dId;
}
}
dept类
package com.cheng.entity;
public class Dept {
private Integer deptid;
private String deptname;
public Integer getDeptid() {
return deptid;
}
public void setDeptid(Integer deptid) {
this.deptid = deptid;
}
public String getDeptname() {
return deptname;
}
public void setDeptname(String deptname) {
this.deptname = deptname == null ? null : deptname.trim();
}
}
EmpMapper
package com.cheng.dao;
import com.cheng.entity.Emp;
import java.util.List;
public interface EmpMapper {
int deleteByPrimaryKey(Integer empid);
int insert(Emp record);
int insertSelective(Emp record);
Emp selectByPrimaryKey(Integer empid);
int updateByPrimaryKeySelective(Emp record);
int updateByPrimaryKey(Emp record);
// 查询emp所有
List<Emp> findAllEmp();
// 删除信息
int del(Integer empid);
// 修改添加
int ap(Emp emp);
}
DeptMapper
package com.cheng.dao;
import com.cheng.entity.Dept;
import java.util.List;
public interface DeptMapper {
int deleteByPrimaryKey(Integer deptid);
int insert(Dept record);
int insertSelective(Dept record);
Dept selectByPrimaryKey(Integer deptid);
int updateByPrimaryKeySelective(Dept record);
int updateByPrimaryKey(Dept record);
List<Dept> selectAll();
}
EmpController
package com.cheng.controller;
import com.cheng.dao.EmpMapper;
import com.cheng.entity.Emp;
import com.cheng.util.Reust;
import com.cheng.util.TableLayui;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class EmpController {
@Autowired
private EmpMapper empMapper;
@RequestMapping("findAllEmp")
public TableLayui findAllEmp(Integer page, Integer limit) {
PageHelper.startPage(page, limit);
List<Emp> list = empMapper.findAllEmp();
PageInfo<Emp> pageInfo = new PageInfo<Emp>(list);
return new TableLayui(0, "", pageInfo.getTotal(), pageInfo.getList());
}
//
@RequestMapping("svae")
public Reust svae(Emp emp) {
int ap;
if (emp.getEmpid() != null && emp.getEmpid() != 0) {
ap = empMapper.updateByPrimaryKey(emp);
} else {
ap = empMapper.insert(emp);
}
if (ap>0) {
return new Reust(200, "添加成功", null);
}else {
return new Reust(500, "添加失败", null);
}
}
// 删除
@RequestMapping("del")
public Reust del(Integer empId) {
int del = empMapper.del(empId);
// System.out.println(empId);
if (del > 0) {
return new Reust(200, "删除成功", null);
} else {
return new Reust(200, "删除成功", null);
}
}
//
@RequestMapping("cname")
public Reust cname(String empname) {
if (empname.equals("ccr")){
return new Reust(200,"账号存在",null);
}else {
return new Reust(500,"账号失败",null);
}
}
}
Deptcontertller
package com.cheng.controller;
import com.cheng.dao.DeptMapper;
import com.cheng.entity.Dept;
import com.cheng.util.Reust;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.List;
@Controller
public class Deptcontertller {
@Autowired
private DeptMapper deptMapper;
@RequestMapping("/findById")
@ResponseBody
public Dept findByid(Integer id){
Dept dept = deptMapper.selectByPrimaryKey(id);
return dept;
}
@RequestMapping("getByDept")
@ResponseBody
public Reust getByDept(){
List<Dept> depts = deptMapper.selectAll();
return new Reust(200,"查询成功",depts);
}
}
项目运行效果