学生信息管理
1、打入需要用到的jar包
pom.xml
版本选1.8
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.2.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.6.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.11.0</version>
</dependency>
2、构建基本的程序结构
在包中创建具体的类或接口
3、完成配置文件的配置
(1).MySQL的配置信息
根据自己数据库的配置来更改
mysql.driver=com.mysql.jdbc.Driver
mysql.url=jdbc:mysql://192.168.56.138:3306/student?useUnicode=true&characterEncoding=utf-8&useSSL=true
mysql.username=root
mysql.password=root
(2).spring-mvc 的配置
xmlns:context和xmlns:mvc需要自己加入
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
">
<context:component-scan base-package="control"/>
<context:annotation-config/>
<mvc:annotation-driven/>
</beans>
(2).spring-mybatis的配置
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
<!--引入context模块-->
xmlns:context="http://www.springframework.org/schema/context"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
">
<!--组件扫描:控制model(模型层)-->
<context:component-scan base-package="cn.kgc.kb08.mbdemo"/>
<!--启动注解配置-->
<context:annotation-config/>
<!--引入数据源配置文件xxx.properties-->
<context:property-placeholder location="classpath:datasource.properties"/>
<!--数据源实体bean(spring-jdbc提供)-->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${mysql.driver}"/>驱动
<property name="url" value="${mysql.url}"/>连接字符串
<property name="username" value="${mysql.username}"/>账号
<property name="password" value="${mysql.password}"/>密码
</bean>
<!--数据库事务管理bean(spring-jdbc提供)-->
<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>数据源关联依赖
</bean>
<!--SQL会话工厂bean(mybatis-spring提供-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>数据源关联依赖
<property name="typeAliasesPackage" value="cn.kgc.kb08.mbdemo.entity"/>别名包
<property name="mapperLocations" value="classpath:mapping/*Mapper.xml"/>Mapper.xml 关联
</bean>
<!--Mapper接口扫描bean(mybatis-spring提供-->
<bean id="mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName"
value="sqlSessionFactory"/>SQL会话工厂关联依赖
<property name="basePackage" value="cn.kgc.kb08.mbdemo.mapper"/>mapper接口关联
</bean>
<bean id="vssService" class="cn.kgc.kb08.mbdemo.service.VStuScoreService"/>
</beans>
4、编写具体的程序
(1).编写实体类
和MySQL中的表字段要一致,采用包装类来一一对应数据库中字段的类型
private Integer id;
private String sname;
private String sgender;
private Integer sage;
private String saddress;
private String semail;
再获取get和set方法就可以完成基本的准备。
(2).编写模型层
1).mapper接口的编写
需要注意的是一些SQL语句和mybatis的运用
@Insert("insert into studentinfo(sname,sgender,sage,saddress,semail) value(#{sname},#{sgender},#{sage},#{saddress},#{semail})")
int addStu(StudentInfo stu);
@Delete("delete from studentinfo where id=#{id}")
int removeStu(int id);
@Select("select * from studentinfo where id =#{id}")
StudentInfo findById(int id);
int modify(StudentInfo stu);
@Select("select ceil(count(1)/#{pageSize}) from studentinfo")
int findTotal(int pageSize);
@Select("select * from studentinfo limit #{begin},#{pageSize}")
List<StudentInfo> findStu(@Param("begin") int begin, @Param("pageSize") int pageSize);
2).服务层service 的编写
@Service
public class StudentService {
@Autowired
private StudentMapper sm;
public Result addStu(StudentInfo stu) {
return Result.succeed(sm.addStu(stu));
}
public Result removeStu(int id) {
return Result.succeed(sm.removeStu(id));
}
public Result findById(int id) {
return Result.succeed(sm.findById(id));
}
public Result modify(StudentInfo stu) {
return Result.succeed(sm.modify(stu));
}
public Result findStu(int pageNo, int pageSize) {
int total = sm.findTotal(pageSize);
pageNo = total == 0 ? 1 : pageNo>total?total:pageNo;
return Result.succeed(Page.init(total,pageNo, PageUnti.pageltems(pageNo,pageSize,total),sm.findStu((pageNo-1)*pageSize,pageSize)));
}
}
(3).编写控制层
控制层的方法实现
5、web.xml文件的配置
最后就是与前端的连接,按自己的工具来操作即可,也可以在idea中测试