一、MyBatis简介与配置MyBaits+Spring+MySql
1.1MyBatis简介
MyBatis 是一个可以自定义SQL、存储过程和高级映射的持久层框架。MyBatis 摒除了大部分的JDBC代码、手工设置参数和结果集重获。MyBatis 只使用简单的XML 和注解来配置和映射基本数据类型、Map 接口和POJO 到数据库记录。相对Hibernate和Apache OJB等“一站式”ORM解决方案而言,ibatis 是一种“半自动化”的ORM实现。
需要使用的Jar包:mybatis-3.0.2.jar(mybatis核心包)。mybatis-spring-1.0.0.jar(与Spring结合包)。
下载地址:
http://ibatis.apache.org/tools/ibator
http://code.google.com/p/mybatis/
1.2MyBaits+Spring+MySql简单配置
1.2.1搭建Spring环境
1,建立maven的web项目;
2,加入Spring框架、配置文件;
3,在pom.xml中加入所需要的jar包(spring框架的、mybatis、mybatis-spring、junit等);
4,更改web.xml和spring的配置文件;
5,添加一个jsp页面和对应的Controller;
6,测试。
可参照:http://limingnihao.javaeye.com/blog/774215
1.2.2建立MySql数据库
建立一个学生选课管理数据库。
表:学生表、班级表、教师表、课程表、学生选课表。
逻辑关系:每个学生有一个班级;每个班级对应一个班主任教师;每个教师只能当一个班的班主任;
使用下面的sql进行建数据库,先建立学生表,插入数据(2条以上)。
更多sql请下载项目源文件,在resource/sql中。
- /* 建立数据库 */
-
CREATE DATABASE STUDENT_MANAGER;
- USE STUDENT_MANAGER;
-
- /***** 建立student表 *****/
-
CREATE TABLE STUDENT_TBL
- (
-
STUDENT_ID VARCHAR(255) PRIMARY KEY,
-
STUDENT_NAME VARCHAR(10) NOT NULL,
-
STUDENT_SEX VARCHAR(10),
-
STUDENT_BIRTHDAY DATE,
-
CLASS_ID VARCHAR(255)
- );
-
- /*插入学生数据*/
-
INSERT INTO STUDENT_TBL (STUDENT_ID,
- STUDENT_NAME,
- STUDENT_SEX,
- STUDENT_BIRTHDAY,
- CLASS_ID)
-
VALUES (123456,
-
'某某某',
-
'女',
-
'1980-08-01',
- 121546
- )
创建连接MySql使用的配置文件mysql.properties。
- jdbc.driverClassName=com.mysql.jdbc.Driver
-
jdbcjdbc.url=jdbc:mysql://localhost:3306/student_manager?user=root&password=limingnihao&useUnicode=true&characterEncoding=UTF-8
1.2.3搭建MyBatis环境
顺序随便,现在的顺序是因为可以尽量的少的修改写好的文件。
1.2.3.1创建实体类: StudentEntity
- public class StudentEntity implements Serializable {
-
-
private static final long serialVersionUID = 3096154202413606831L;
-
private ClassEntity classEntity;
-
private Date studentBirthday;
-
private String studentID;
-
private String studentName;
-
private String studentSex;
-
-
public ClassEntity getClassEntity() {
-
return classEntity;
- }
-
-
public Date getStudentBirthday() {
-
return studentBirthday;
- }
-
-
public String getStudentID() {
-
return studentID;
- }
-
-
public String getStudentName() {
-
return studentName;
- }
-
-
public String getStudentSex() {
-
return studentSex;
- }
-
-
public void setClassEntity(ClassEntity classEntity) {
-
this.classEntity = classEntity;
- }
-
-
public void setStudentBirthday(Date studentBirthday) {
-
this.studentBirthday = studentBirthday;
- }
-
-
public void setStudentID(String studentID) {
-
this.studentID = studentID;
- }
-
-
public void setStudentName(String studentName) {
-
this.studentName = studentName;
- }
-
-
public void setStudentSex(String studentSex) {
-
this.studentSex = studentSex;
- }
- }
1.2.3.2创建数据访问接口
Student类对应的dao接口:StudentMapper。
- public interface StudentMapper {
-
-
public StudentEntity getStudent(String studentID);
-
-
public StudentEntity getStudentAndClass(String studentID);
-
-
public List<StudentEntity> getStudentAll();
-
-
public void insertStudent(StudentEntity entity);
-
-
public void deleteStudent(StudentEntity entity);
-
-
public void updateStudent(StudentEntity entity);
- }
1.2.3.3创建SQL映射语句文件
Student类的sql语句文件StudentMapper.xml
resultMap标签:表字段与属性的映射。
Select标签:查询sql。
- <?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.manager.data.StudentMapper">
-
-
<resultMap type="StudentEntity" id="studentResultMap">
-
<id property="studentID" column="STUDENT_ID"/>
-
<result property="studentName" column="STUDENT_NAME"/>
-
<result property="studentSex" column="STUDENT_SEX"/>
-
<result property="studentBirthday" column="STUDENT_BIRTHDAY"/>
-
</resultMap>
-
-
-
<select id="getStudent" parameterType="String" resultType="StudentEntity" resultMap="studentResultMap">
-
<![CDATA[
- SELECT * from STUDENT_TBL ST
- WHERE ST.STUDENT_ID = #{studentID}
- ]]>
-
</select>
-
-
-
<select id="getStudentAll" resultType="com.manager.data.model.StudentEntity" resultMap="studentResultMap">
-
<![CDATA[
- SELECT * from STUDENT_TBL
- ]]>
-
</select>
-
-
</mapper>
1.2.3.4创建MyBatis的mapper配置文件
在src/main/resource中创建MyBatis配置文件:mybatis-config.xml。
typeAliases标签:给类起一个别名。com.manager.data.model.StudentEntity类,可以使用StudentEntity代替。
Mappers标签:加载MyBatis中实体类的SQL映射语句文件。
- <?xml version="1.0" encoding="UTF-8" ?>
-
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
-
<configuration>
-
<typeAliases>
-
<typeAlias alias="StudentEntity" type="com.manager.data.model.StudentEntity"/>
-
</typeAliases>
-
<mappers>
-
<mapper resource="com/manager/data/maps/StudentMapper.xml" />
-
</mappers>
-
</configuration>
1.2.3.5修改Spring 的配置文件
主要是添加SqlSession的制作工厂类的bean:SqlSessionFactoryBean,(在mybatis.spring包中)。需要指定配置文件位置和dataSource。
和数据访问接口对应的实现bean。通过MapperFactoryBean创建出来。需要执行接口类全称和SqlSession工厂bean的引用。
-
-
<context:property-placeholder location="classpath:mysql.properties" />
-
-
<bean id=color: #0000ff; padding:
分享到:
相关推荐
标题 "Spring+SpringMVC+Mybaits+layui+bootstrap+mysql+oracle" 提供的信息表明,这是一个基于Java的Web开发框架集成方案,用于构建高效、稳定的企业级应用。下面将详细阐述这些技术栈的核心概念及其在实际开发中的...
"Springboot+mybaits+mysql+redis+nginx,仓库管理系统。毕业设计" 这个标题揭示了这个项目的核心技术栈和应用领域。它表明了一个基于Spring Boot框架的仓库管理系统,该系统集成了MyBatis作为持久层框架,MySQL作为...
"maven+spring MVC+Mybatis+jetty+mysql" 的组合是常见的开发栈,它涵盖了项目管理、前端控制器、持久层操作、应用服务器以及数据库管理等多个层面。下面将详细介绍这些关键技术及其在实际应用中的作用。 1. Maven...
**SpringMVC、MyBatis、Spring 和 MySQL 框架简介** SpringMVC 是 Spring 框架的一部分,主要用于构建 Web 应用程序。它提供了模型-视图-控制器(MVC)架构,帮助开发者将业务逻辑、数据展示和用户交互分离,使代码...
- 配置MyBatis的`mybatis-spring-boot-starter`依赖。 - 创建`mybatis-config.xml`配置文件,设置数据源和事务管理器。 - 定义Mapper接口和对应的XML文件,编写SQL语句。 5. **HTML基础** - HTML(HyperText ...
通过这个Demo,你可以学习到如何设置项目结构,如何配置SpringMVC、MyBatis和MySQL,以及如何在实际开发中进行业务处理和数据交互。对于初学者来说,这是一个很好的实践平台,能够帮助理解和掌握这些技术的核心概念...
运行环境: 最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 IDE环境: Eclipse,Myeclipse,IDEA都可以 tomcat环境: Tomcat 9.0...用了技术框架: HTML+CSS+JavaScript+jsp+mysql+Spring+mybatis
【标题】"maven+spring mvc+mybaits+mysql"是一个常见的Java Web开发框架组合,用于构建高效、可维护的Web应用程序。这个项目利用了Maven作为构建工具,Spring MVC作为控制器层,MyBatis作为数据访问层,以及MySQL...
在本项目中,我们主要探讨的是如何利用Spring Boot、Spring Security、JWT(JSON Web Tokens)、MyBatis-Plus以及MySQL数据库来构建一个完整的权限管理系统。下面将详细解析这些技术及其在项目中的应用。 1. Spring...
本项目是一个基于Java技术栈,使用SpringBoot、Mybatis、MySQL数据库、Bootstrap前端框架和Maven构建工具实现的网上商城系统。以下将详细介绍这个系统的关键技术及其应用。 **1. Java**: 作为后端开发的主要语言,...
这是一个基于现代化技术栈的Web后台开发示例,主要采用了Spring Boot、MyBatis以及MySQL数据库,结合前端Vue.js和axios库。以下将详细介绍这个项目中涉及的关键技术点和它们的作用。 1. **Spring Boot**: Spring ...
本项目使用了如下几个框架spring4+springmvc+mybatis+mysql+jquery+jdk1.6+tomcat6 搭建。项目没有使用maven 管理,目的是方便大家学习使用。项目中已经实现了curd .具体可以看代码
综上所述,"java springboot+mybaits+mysql的websocket即时通讯聊天demo"是一个综合性的项目,涵盖了后端服务的构建、数据库设计、WebSocket通信以及前端交互等多个方面。通过这个项目,开发者可以学习到如何在实际...
标题 "springmvc+shiro+mybaits+mysql" 暗示了这是一个基于Spring MVC、Apache Shiro、MyBatis以及MySQL数据库构建的权限管理系统的实现。下面将详细阐述这些技术栈及其在系统中的作用。 Spring MVC是Spring框架的...
本项目"springboot + mybatis +mysql+ sqlserver 双数据源"正是针对这种需求的一个解决方案,它利用SpringBoot框架、MyBatis持久层框架以及MySQL和SQLServer两种数据库,实现了数据源的自动切换,以满足不同业务场景...
在本项目中,我们利用了SpringBoot、MyBatis、MySQL、LayUI和Thymeleaf这五种核心技术,构建了一个完整的Web应用程序,实现了学生信息管理系统的增删改查功能。下面将对这些技术及其在项目中的应用进行详细解释。 *...
【标题】"基于SpringBoot+Mybaits+Mysql的用户管理项目" 是一个使用了现代Java开发框架的简易用户管理系统。这个系统的核心是利用SpringBoot的便捷性、Mybatis的灵活性以及Mysql的稳定性来构建一个高效且易于维护的...
后端:SpringBoot+Mybaits 前端:Vue+elementui 使用说明 项目运行: 1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEc
Spring MVC、MyBatis 和 MySQL 是企业级 Web 开发中常用的三大技术栈,它们共同构建了一个功能强大的后端系统。Spring MVC 是 Spring 框架的一部分,负责处理 HTTP 请求和响应,提供了一种模型-视图-控制器的架构...
battcn管理系统,集成最新技术框架,以最通用性,稳定性,快速性开发系统,最新技术 springMVC4.2.2统+spring4.2.2+,mybaits3.2.8+MySQL5.6,采用Shiro做权限控制,前端最新流行的技术,这是一个属于大家