两种方式 声明式事物:aop 编程式事物:就是在代码中手动添加事物 声明式事物 只需要在spring-dao.xml配置即可(注意需要假如相关约束) <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.
错误 dao.DataIntegrityViolationException: Error attempting to get column 'owner_name' from result set. Cause: java.sql.SQLDataException: Cannot determine value type from string '大老板' 原因: 数据库字段与实体类字段类型不匹配 如果代码中使用了union,union中的
1.在ssm的整合项目中,首先导入相关的依赖,编写好数据库,然后创建mybatis的核心配置文件 创建database.properties连接数据库,和applicationContext文件来统一管理spring配置文件 然后到pojo对应变斜数据库中的实体类,注意实体类中的的名称迎合数据库中的一致 再到dao编写dao层与数据库
针对java工程里的各种带O的对象,进行分析,了解各自的作用。 PO:persistent object,持久对象。与数据库里表字段一一对应。PO是一些属性,以及set和get方法组成。一般情况下,一个表,对应一个PO。是直接与操作数据库的crud相关。 VO:vlue object,又名:表现层对象,即view object。通常用于业务层
什么是UT? UT(Unit Test)即单元测试 UT有什么价值? 大部分的开发都不喜欢写UT,原因无非以下几点: 产品经理天天催进度,哪有时间写UT UT是测试自己的代码,自测?那要QA何用? 自测能测出bug?都是基于自身思维,就像考试做完第一遍,第二遍检查一样,基本检查不出什么东西 UT维护成本太高,投入产出比
简述: java的几种对象(PO,VO,DAO,BO,POJO)解释: 一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。 二、VO:value object值对象。通常用
@SpringBootTest @RunWith(SpringRunner.class)//@RunWith(SpringRunner.class)这些类才能实例化到spring容器中,自动注入才能生效,不然会报异常 public class DictDaoTest extends TestCase { @Autowired private DictDao dao; @Test public void getByIdT
1.创建一个maven空项目 2.导入jar包 <dependencies> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc&
目录 三层架构MybatisMybatis作用Mybatis的安装Mybatis的传统使用打开pom.xml加入依赖创建映射sql的配置文件创建主配置文件mybatisSqlSessionFactory和SqlSession 动态代理getMapperMybatis深入理解参数一个简单类型的传参多个参数传值@Param使用对象传参按位置传参Map传
boot2-1 登录功能 login.html UserController 和reg 注册功能的步骤一样 boot2-2 员工管理系统(员工表 增 删 改 查 ) EmpController 创建数据库myemp 和员工表 t_emp create database myemp character set utf8; use myemp; create table t_emp(id int primary key auto_inc
springboot Entity层:实体层 数据库在项目中的类 Entity层是实体层,也就是所谓的model,也称为pojo层,是数据库在项目中的类,该文件包含实体类的属性和对应属性的set、get方法; DAO层: 持久层 主要与数据库进行交互 DAO层=mapper层,现在用Mybatis逆向工程生成的mapper层,其实就是dao层。
一、 java三层架构 业务层(逻辑层、service层) 采用事务脚本模式。将一个业务中所有的操作封装成一个方法,同时保证方法中所有的数据库更新操作,即保证同时成功或同时失败。避免部分成功部分失败引起的数据混乱操作。 表现层(JSP) 采用MVC模式。 M称为模型,也就是实体类。用于数据的封装
1在进行购物车开发的过程时候,出现了界面提取数据库内容不正确情况,是dao包中的内容存在二义性。 注:此处的tid存放到了id的位置中,因而出现购买功能无法正常实现的情况。
为了能清楚的说明问题,源码我尽量加上详细的注释。有些大段的源码我只是截取了一部分能说明问题就好。 xml文件解析 我们知道SqlSessionFactory是mybatis非常重要的一个类,它是单个数据库映射关系经过编译后的内存镜像.SqlSessionFactory对象的实例可以通过SqlSessionFactoryBu
Springboot中使用JdbcTemplate的queryForObject方法,当查不到数据时会抛出如下异常: org.springframework.dao.EmptyResultDataAccessException: Incorrect result size: expected 1, actual 0 org.springframework.dao.support.DataAccessUtils.(DataAccessUtils.java:71) org.spri
表现层(jsp)、持久层(类似dao)、业务层(逻辑层、service层)、模型(javabean)、控制层(action) 转自:http://www.blogjava.net/jiabao/archive/2007/04/08/109189.html 为了实现web层(struts)和持久层(Hibernate)之间的松散耦合,我们采用业务代表(Business Delegate)和DAO(Data Access Objec
SSM是sping+springMVC+mybatis集成的框架。 MVC即model view controller。 model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致。 service层。存放业务逻辑处理,也是一些关于数据库处理的操作,但不是直接和数据库打交道,他有接口还有接口的实现方法,在接口的实现方法
Java Web基础——Controller+Service +Dao三层的功能划分(摘取自网络)1. Controller/Service/DAO简介: Controller是管理业务(Service)调度和管理跳转的。 Service是管理具体的功能的。 Controller只负责管理,而Service负责实施。 DAO只完成
一. IOC 1.1 IOC原型 业务1:在三层架构中我们是如何实现一个具体操作业务? 1.创建如下的项目: 2.dao层 在dao层下有一个接口UserDao,该接口下有一个getUserInfo() 3.service层 service层就是业务层,给表示层提供业务,通过dao层实现相应业务。 4.表示层 用测试类来做为表示
数据库相关 背景: 1)mybatis生成的xml文件,其中的主键id是自增的,xml文件insert的sql语句不包含id列。 2)业务场景:需要进行数据清洗,旧表与新表的数据都是一致的,包括主键id。由1)可知,即使给新的对象赋了值,也不会插入到新的数据表中。 解决方案: 新增sql语句,支持自增id的插入 优点:易
JAVA传输对象PO、VO、BO、DTO、POJO、DAO定义与关系 具体与对象间关系 (面向对象思想) PO、VO、BO、DTO、POJO、DAO之间的关系 J2EE开发中大量的专业缩略语很是让人迷惑,如PO VO BO DTO POJO DAO。 下文展示不同传输对象之间的定义和关系。 PO : persistant object持久对象 最形
目录 1.框架概述 1.1 三层架构 1.2 框架 2.Mybatis框架概述 2.1 JDBC的缺陷 2.2 Mybatis框架概述 3.Mybatis的入门案例 4.Mybatis中主要类的介绍 4.1 Resources类 4.2 SqlSessionFactoryBuilder类 4.3 SqlSessionFactory接口 4.4 SqlSession接口 5.关于入门案例的修改 5.1 传统d
10.12JDBC之DAO实现类的优化 固定的是操作Customer表 原因: 固定操作的是Customer表,所以没必要在实现类当中每次都写一遍Customer.class 思路: 修改抽象类当中的getInstance方法,将形参class改成获取父类的泛型。--->Java基础当中的获取父类泛型的问题 解决办法: 因为操作的
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframew
一、问题 报错结果: 二、造成错误代码 本人造成的错误是在 dao/StudentDao.xml 文件造成的,也就是持久层的dao配置文件写错了,下面是本人的错误代码: <select id="insertStudent"> insert into student1(name, age) values (#{name}, #{age}) </select> 造成错误