问题
java三层用户注册运行成功,但是数据没用添加到数据库中
原因
在service层没有事物提交和关闭
解决措施
在service提交和事物关闭
目录结构
代码
连接数据库的配置文件
工具类
MyBatisUtils
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 tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;
import tk.mybatis.mapper.entity.Config;
import tk.mybatis.mapper.mapperhelper.MapperHelper;
import java.io.InputStream;
public class MyBatisUtils {
//会话工厂
private static SqlSessionFactory factory;
/**初始化:会话工厂*/
static{
try{
//1、获取资源流
InputStream is = Resources.getResourceAsStream("SqlMapConfig.xml");
//2、获取会话工厂
factory = new SqlSessionFactoryBuilder().build(is);
}catch(Exception e){
throw new RuntimeException(e);
}
}
/**使用ThreadLocal,管理某个线程的SqlSession*/
private static ThreadLocal<SqlSession> local = new ThreadLocal<SqlSession>();
/**获取新会话*/
public static SqlSession openSession(){
SqlSession session = null;
session = local.get();
if(session==null){
session = factory.openSession();
//创建一个MapperHelper
MapperHelper mapperHelper = new MapperHelper();
//特殊配置
Config config = new Config();
// 设置UUID生成策略
// 配置UUID生成策略需要使用OGNL表达式
// 默认值32位长度:@java.util.UUID@randomUUID().toString().replace("-", "")
//config.setUUID("");
// 主键自增回写方法,默认值MYSQL,详细说明请看文档
// config.setIDENTITY("HS