静态网站制作视频,门户网站建设申请,网站建设与文字的工作,网站建设实训实训心得IDEA新建maven项目#xff0c;使用mybatis操作数据库完整过程 一、IDEA新建maven项目二、配置mybatis三、创建表对应实体类四、创建mapper接口五、使用mybatis操作数据库 前提#xff1a; 这个教程是在maven项目中使用mybatis进行数据库操作#xff0c;不是在spring boot项目… IDEA新建maven项目使用mybatis操作数据库完整过程 一、IDEA新建maven项目二、配置mybatis三、创建表对应实体类四、创建mapper接口五、使用mybatis操作数据库 前提 这个教程是在maven项目中使用mybatis进行数据库操作不是在spring boot项目中。 一、IDEA新建maven项目
打开idea新建maven项目 在pom文件中添加mybatis和mysql依赖 dependencygroupIdorg.junit.jupiter/groupIdartifactIdjunit-jupiter/artifactIdversionRELEASE/versionscopetest/scope/dependencydependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.5.7/version/dependency!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --dependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.33/version/dependency二、配置mybatis
在resources目录下新建jdbc.properties配置文件然后输入数据库的配置项如下所示
# mysql8的驱动
drivercom.mysql.cj.jdbc.Driver
urljdbc:mysql://localhost:3306/demo
usernameroot
passwordroot然后新建mybatis-config.xml文件配置mybatis的数据库连接以及mapper映射文件如下所示
?xml version1.0 encodingUTF-8 ?
!DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd
configuration!-- 引入配置文件properties --properties resourcejdbc.properties/properties
!-- 配置log4j--
!-- settings--
!-- setting nameloglmpl valueLOG4J/--
!-- /settings--typeAliasespackage namecom.cc.demo.model//typeAliasesenvironments defaultmysqlenvironment idmysqltransactionManager typeJDBC/dataSource typePOOLEDproperty namedriver value${driver}/!--数据库地址--property nameurl value${url}/!--数据库账号--property nameusername value${username}/!--数据库密码--property namepassword value${password}//dataSource/environment/environmentsmappers!--映射文件路径 对于其他的mapper按照如下格式即可--mapper resourcemapper/SeatMapper.xml/mapper resourcemapper/UserInfoMapper.xml//mappers
/configuration三、创建表对应实体类
然后根据数据库表创建数据库实体类示例表创建语句如下所示 create table userinfo
(userId int auto_increment primary key,username varchar(50) not null,userSex tinyint not null,userPhone varchar(50) not null,email varchar(50) not null
);大家参照这个格式然后使用自己的表即可 2. 然后根据数据库表创建实体类如下所示
public class UserInfo implements Serializable {private Integer userId;private String username;private Byte usersex;private String userphone;private String email;public UserInfo() {}public UserInfo(Integer userId, String username, Byte usersex, String userphone, String email) {this.userId userId;this.username username;this.usersex usersex;this.userphone userphone;this.email email;}private static final long serialVersionUID 1L;public Integer getuserId() {return userId;}public void setuserId(Integer userId) {this.userId userId;}public String getUsername() {return username;}public void setUsername(String username) {this.username username;}public Byte getUsersex() {return usersex;}public void setUsersex(Byte usersex) {this.usersex usersex;}public String getUserphone() {return userphone;}public void setUserphone(String userphone) {this.userphone userphone;}public String getEmail() {return email;}public void setEmail(String email) {this.email email;}
}四、创建mapper接口
根据自己想要的操作创建mapper接口这里只写了一个插入方法如下所示
Mapper
public interface UserInfoMapper {int insert(UserInfo record);
}创建该mapper对应的xml映射文件如下所示
?xml version1.0 encodingUTF-8?
!DOCTYPE mapper PUBLIC -//mybatis.org//DTD Mapper 3.0//EN http://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.cc.demo.mapper.UserInfoMapperresultMap idBaseResultMap typecom.zzj.webservlet.model.UserInfoid columnuserId jdbcTypeINTEGER propertyuserId /result columnusername jdbcTypeVARCHAR propertyusername /result columnuserSex jdbcTypeTINYINT propertyusersex /result columnuserPhone jdbcTypeVARCHAR propertyuserphone /result columnemail jdbcTypeVARCHAR propertyemail //resultMapsql idBase_Column_ListuserId, username, userSex, userPhone, email/sqlinsert idinsert keyColumnuserId keyPropertyuserId parameterTypecom.cc.demo.model.UserInfo useGeneratedKeystrueinsert into userinfo (username, userSex, userPhone, email)values (#{username,jdbcTypeVARCHAR}, #{usersex,jdbcTypeTINYINT}, #{userphone,jdbcTypeVARCHAR}, #{email,jdbcTypeVARCHAR})/insert
/mappernamespace:这里填写对应的mapper的路径insert这一块是编写的对应的插入语句id是为了标识方法用于mybatis查找所调用的方法parameterType表示的是方法的参数类型
注意 以上就是mybatis的主要使用过程mapper和对应的xml映射文件结合使用用来操作数据库。mybatis也可以使用注解对数据库进行操作。但xml文件能够实现更为复杂的语句所以一般我在开发过程中是xml文件和注解配合使用的。
五、使用mybatis操作数据库
上面只给出了mybatis的配置和xml文件的编写这里给出具体如何使用mybatis操作数据库。具体代码如下所示
public class Test01 {public static SqlSessionFactory getSqlSessionFactory() throws IOException {//注意此处路径不要写错String resource mybatis-config.xml;InputStream inputStream Resources.getResourceAsStream(resource);return new SqlSessionFactoryBuilder().build(inputStream);}public static void main(String[] args) throws IOException {//1、获取SqlSessionFactory实例SqlSessionFactory sqlSessionFactory getSqlSessionFactory();//2、打开一个会话SqlSession openSession sqlSessionFactory.openSession();try {// 3、获取接口的实现类对象会为接口自动的创建一个代理对象代理对象去执行增删改查方法UserInfoMapper mapper openSession.getMapper(UserInfoMapper.class);int count 0;// 4、调用接口的方法for (int i 0; i 30; i) {if(i % 2 0){count mapper.insert(new UserInfo(i,xiao i, (byte) 1,156382260 i,xiao i qq.com));}else {count mapper.insert(new UserInfo(i,xiao i, (byte) 0, 156382260 i,xiao i qq.com));}}System.out.println(count);//7.提交事务核心配置文件中的事物方式为JDBC因此需要手动提交//这里需要加上commit否则能够实现功能但不能将修改持久化到数据库也就是说没有commit不会真正的改变数据库而是会回滚的执行前openSession.commit();} finally {//4、使用完毕后关闭会话openSession.close();}}
}上面就是maven项目使用mybatis的过程大概就是这样一个模板。可以根据自己的需要进行修改而且上面的创建工厂和会话可以进行封装不用每次都再去写这一部分的代码。