springmybatis
今天的内容主要是实现用mybatis和spring,进行最基本的增删改查
首先新建一个新的项目,点击next
然后新建包lib把包复制到lib里,再新建包和Java文件 结构如下
User
package com.zhongruan.bean;
public class User {
private int id;
private String password;
private String username;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", password='" + password + '\'' +
", username='" + username + '\'' +
'}';
}
}
IUserDao
package com.zhongruan.dao;
import com.zhongruan.bean.User;
import java.util.List;
public interface IUserDao {
List<User> findAll();
void delete(int id);
void add(User user);
void update(User user);
}
UserService
package com.zhongruan.service.impl;
import com.zhongruan.bean.User;
import com.zhongruan.dao.IUserDao;
import com.zhongruan.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService implements IUserService {
@Autowired
private IUserDao userDao;
@Override
public List<User> findAll() {
return userDao.findAll();
}
@Override
public void delete(int id) {
userDao.delete(id);
}
@Override
public void add(User user) {
userDao.add(user);
}
@Override
public void update(User user) {
userDao.update(user);
}
}
IUserService
package com.zhongruan.service;
import com.zhongruan.bean.User;
import java.util.List;
public interface IUserService {
List<User> findAll();
void delete(int id);
void add(User user);
void update(User user);
}
Test
package com.zhongruan.test;
import com.zhongruan.bean.User;
import com.zhongruan.service.IUserService;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.util.List;
public class Test {
public static void main(String[] args) {
ClassPathXmlApplicationContext applicationContext =new ClassPathXmlApplicationContext("applicationContext.xml");
IUserService userService=(IUserService) applicationContext.getBean("userService");
// 查
// List<User> users=userService.findAll();
// System.out.println(users);
// 删
// List<User> users=userService.findAll();
// System.out.println(users);
// userService.delete(30);
// List<User> users1=userService.findAll();
// System.out.println(users1);
// 增
// List<User> users1=userService.findAll();
// System.out.println(users1);
// User user=new User();
// user.setUsername("ert");
// user.setPassword("124");
// userService.add(user);
// List<User> users2=userService.findAll();
// System.out.println(users2);
// 改
//修改
User user=new User();
user.setId(27);
user.setUsername("aa");
user.setPassword("12345");
userService.update(user);
}
}
最后运行Test结果如下
进入数据库查看
mybatis
和上面一样需要新建一个新项目,不过就是建的过程中勾选的不一样,请看以下截图
修改好名称和路径后点击Finish
新建包和Java文件,结构如下
User
package com.zhongruan.bean;
public class User {
private int id;
private String username;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", username='" + username + '\'' +
", password='" + password + '\'' +
'}';
}
}
**IUserDao**
package com.zhongruan.dao;
import com.zhongruan.bean.User;
import java.util.List;
public interface IUserDao {
List findAll();
void deleteById(int id);
void updateById(User user);
void addById(User user);
}
UserMapper1.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.zhongruan.dao.IUserDao">
<select id="findAll" resultType="com.zhongruan.bean.User">
select * from tb_user
</select>
<select id="deleteById" parameterType="int">
delete from tb_user where id=#{id}
</select>
<select id="updateById" parameterType="com.zhongruan.bean.User">
update tb_user set username=#{username},password=#{password} where id=#{id}
</select>
<select id="addById" parameterType="com.zhongruan.bean.User">
insert into tb_user (username,password) values (#{username},#{password})
</select>
</mapper>
Test
package com.zhongruan.test;
import com.zhongruan.bean.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.Reader;
import java.util.List;
public class Test {
public static void main(String[]args) throws IOException {
Reader reader= Resources.getResourceAsReader("SqlMapConfig.xml");
SqlSessionFactory build=new SqlSessionFactoryBuilder().build(reader);
SqlSession session=build.openSession();
// List<User> users=session.selectList("findAll");
// System.out.println(users);
// session.delete("deleteById",29);
// User user =new User();
// user.setId(16);
// user.setUsername("mmm");
// user.setPassword("123");
// session.update("updateById",user);
User user =new User();
user.setUsername("popo");
user.setPassword("111");
session.insert("addById",user);
session.commit();
session.close();
}
}
sqlMapConfig.xml
<?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>
<!--开发环境-->
<environments default="development">
<environment id="development">
<!--事务管理-->
<transactionManager type="JDBC"></transactionManager>
<!--连接池-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/zjgm?characterEncoding=utf-8"></property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/zhongruan/dao/UserMapper1.xml"></mapper>
</mappers>
</configuration>
最后运行Test
结果如下
并在数据库里查询