异常问题: IllegalArgumentException: argument type mismatch at cn.tedu.utils.BeanListHandler.handle(BeanListHandler.java:41) 从dao层查询出的数据转发到jsp前台页面时,数值或者数量类的数值得出的结果只有零,而其它数据没毛病~~~ 原因:导致其原因时数值类型转换异常.也就说数值的类型对不一致. eg:在dao层通过聚合函数SUM(int a)计算出数量值,最终得到一个BigDeci…
IDAO接口 定义项目中所有板块相似功能 也是整个项目的根接口  public interface IDAO {  /**   * 新增数据 @param SQL sql查询语句  @param params 参数数组 @wonter   */  public int insert(final String SQL, final Object[] params)    throws CRMDBConnException, CRMSQLException;  /**   * 查询 要求传入查询表对…
先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 数据查询 * */ @Override public List<?> queryObject(List<Map<String, Object>> params, String tableName) { List<Object> objectList = new ArrayList<Object>(); StringBuilder sql = new StringBuilder(…
先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 修改数据 * */ @Override public void updateObject(Object object, String tableName) { StringBuilder sql = new StringBuilder("UPDATE " + tableName + " SET "); Connection connection = null; PreparedStatement…
先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * * 删除数据 */ @Override public void deleteObject(List<Map<String, Object>> params, String tableName) { StringBuilder sql = new StringBuilder( "DELETE FROM order_info WHERE 1=1 "); Connection connection =…
先贴出代码,后续补充自己的思路.配置文件.使用方式: /** * 插入数据 */ @Override public void addObject(Object object, String tableName) { StringBuilder sql = new StringBuilder("INSERT " + tableName + " VALUES("); Connection connection = null; PreparedStatement prep…
参考文章: vuex中store保存的数据,刷新页面会清空 主要解决代码: 1.更改store文件下index文件state的定义 const store = new Vuex.Store({ state:sessionStorage.getItem('state') ? JSON.parse(sessionStorage.getItem('state')): { //id skillId:'', //技能状态 checkStatus:'' } }) 2.在App.vue中添加 mounted(…
MyBatis 的前生为Apache的开源项目iBatis.其优势在于灵活,几乎可以替代JDBC,同时提供了编程接口.目前MyBatis的数据访问Dao层不需要实现类,也不需要像JDBC那样拼接Hql,它只需要一个接口和XML(或者注解).MyBatis提供自动映射.动态SQL.级联.缓存.注解.代码和SQL分离等特性,使用很方便,还能够对SQL就行优化.因为其具有封装少.映射多样化.支持存储过程.可以进行SQL优化等特点,使得它替代了Hibernate成为Java互联网中首选的持久框架.下面简…
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. Service层:Service层主要负责业务模块的逻辑应用设计.同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件中配…
来自:http://jonsion.javaeye.com/blog/592335 DAO层 DAO 层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此 接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及 有关数据库连接的参数都在Spring的配置文件中进行配置. Service层 Service 层主要负责业…
表现层就是看到的东西,比如你现在看到的当前页面控制层就将你的请求从页面传到后台代码逻辑层就是处理你的请求的代码DAO层就是将数据存到数据库中的代码数据库就是数据库了,存东西用的 ,DAO层就是将访问数据库的代码,数据库层是数据存储与管理的代码 O/R Mapping 是 Object Relational Mapping(对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定,用对象来表示关系数据.在O/R Mapping的世界里,有两个基本的也是重要的东东需要了解,即VO,PO. VO,值…
DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. Service层:Service层主要负责业务模块的逻辑应用设计.同样是首先设计接口,再设计其实现的类,接着再Spring的配置文件中配…
前部分摘录自:http://blog.csdn.net/zdwzzu2006/article/details/6053006 DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置. Servi…
来自:http://jonsion.javaeye.com/blog/592335 DAO层 DAO 层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此 接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及 有关数据库连接的参数都在Spring的配置文件中进行配置. Service层 Service 层主要负责业…
转自 http://www.blogdaren.com/post-2024.html DAO层:DAO层主要是做数据持久层的工 作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在 Spring的配置文件中进行配置. Service层:Service层主要负责业务…
1.DAO(mapper)层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,DAO层的设计首先是设计DAO的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,DAO层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置.   (对数据库进行数据持久化操作,他的方法语句是直接针对数据库操作的,主要实现一些增删改查操作)  Service层…
mybatis可以用xml进行数据操作,也可以在dao层用注解的方式,也可以采取xml和dao层接口组合使用的方法.显然 ,后者更加简单. 实体类Student   package com.zhao.entity; /** * * @author: zhao * @time: 2016年5月31日 * * @description:学生 */ public class Student { private int stuId; private String stuName; private Str…
今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多都是以json数据填充的.在导入excel填充json数据到页面时,真的让我差点吐血了.在做这个导入导出的时候,那一个礼拜都是黑暗的. 好了,废话不多说了,我今天就给大家展示这个两个功能的核心点,excel生成json数据和json数据生成excel文件. 一:从上传文件到服务器,后台java解析,…
接着上一篇,上一篇我们创建了项目.创建了实体类,以及创建了数据库数据.这一篇就写一下Dao层,以及对Dao层进行单元测试,看下能否成功操作数据库数据. Dao EmpDao package com.jotal.springboot08restfulcrud.dao; //将类扫描进spring ioc容器中 @Mapper public interface EmpDao { // 得到所有员工 List<Employee> getAllEmp(); // 根据id得到员工 Employee g…
controller层负责创建类传递类给service:service层负责逻辑编写调用dao层 将编写后的类传递到dao层,保证事务的正确性:dao层负责数据的持久化…
系统管理模块_部门管理_改进1:抽取添加与修改JSP页面中的公共代码 commons.jspf <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <meta http-equiv="Conten…
Mybatis概述 定义: Mybatis是一个支持普通sql查询,存储过程和高级映射的优秀持久层框架. Mybatis是(半自动的)跟数据库打交道的orm(object relationship mapping 对象 关系 映射)框架. MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC(Java数据库连接),使开发者只需关注 SQL 语句本身,而不用再花费精力去处理诸如注册驱动.创建 Connection.配置 Statement 等繁杂过程. 对框架的粗浅理解…
我们根据数据库里面的表格:生成对应的Mapper接口文件和...Mapperxml文件: YYCGD:采购单模板表. YYCGD2014:采购单动态生成表,由存储过程生成. YYCGDMX:采购单明细模板表. YYCGDMX2014:采购单明细表,由存储过程生成. 在逆向工程中: File configFile = new File("generatorConfig-business.xml") ----> <table schema="" tableN…
什么叫做供货商药品目录t添加查询功能?就是说我们前面的博客里面不是说供货商登录后看到了自己供应的药品了么如下: 现在供货商想要往里面添加别的药品,那么这个药品的来源就是卫生局提供的那个Ypxx表(药品总表),我们要显示的就是ypxx表减去我之前添加到.就是我可以添加的药品数据. 如下: 我单击"供应药品添加"来到下面的页面: 这个页面的里面的药品就是我可以添加的.之前的已经存在的药品比如流水号"200211"的药品在这里是找不到的. 上面就是我们要实现的功能. 下面…
我们安装显示的要求: 我们能看到显示的目录里面有:供货企业的名字(这个数据来自于供货商的表[usergys]),流水号,通用名,剂型(这些都来自药品信息表),供货的状态(这个呢在gysypml_control中其实就是一个数字1或者0,但是我们要显示的是正常或者暂停 啊,这样的话这个信息就要查找数据字典表dictinfo才能达到这个功能的 ).... 所以我们在查上面要显示的内容的时候:要关联的表有 gysypml, usergys, gysypml_control, ypxx,dictinfo…
Action/Service/DAO简介: Action是管理业务(Service)调度和管理跳转的. Service是管理具体的功能的. Action只负责管理,而Service负责实施. DAO只完成增删改查,虽然可以1-n,n-n,1-1关联,模糊.动态.子查询都可以.但是无论多么复杂的查询,dao只是封装增删改查.至于增删查改如何去实现一个功能,dao是不管的. 总结这三者,通过例子来解释: Action像是服务员,顾客点什么菜,菜上给几号桌,都是ta的职责: Service是厨师,ac…
第一部分建立实体和映射文件 1 通过数据库生成的实体,此步骤跳过,关于如何查看生成反向工程实体类查看SSH框架搭建教程-反向工程章节 Tmenu和AbstractorTmenu是按照数据库表反向工程形成的JAVA实体; 在形成实体的时候注意 1 命名空间 2 要注意要把实体映射文件添加到Hibernate的配置文件写入,分为如下两种情况,一般SSH项目都是情况二 单独使用Hibernate工作,时候写入hibernate的配置文件中. Spring接管Hibernate工作时候写入spring…
首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操作,在这里可以编写自己需要的代码(比如简单的判断).Action层:引用对应的Service层,在这里结合Struts的配置文件,跳转到指定的页面,当然也能接受页面传递的请求数据,也可以做些计算处理.以上的Hibernate,Struts,都需要注入到Spring的配置文件中,Spring把这些联系…
可以使用三种注解来引入DAO层的接口到spring容器中.1.@Mapper,写在每一个DAO层接口上,如下: 2.@MapperScan和@ComponentScan两者之一.前者的意义是将指定包中的所有接口都标注为DAO层接口,相当于在每一个接口上写@Mapper.后者则是代替所有 //指定这是一个操作数据库的mapper@Mapperpublic interface DepartmentMapper { @Select("select * from department where id=…
DAO层叫数据访问层,全称为data access object,属于一种比较底层,比较基础的操作,对于数据库的操作,具体到对于某个表的增删改查, 也就是说某个DAO一定是和数据库的某一张表一一对应的,其中封装了增删改查基本操作,建议DAO只做原子操作,增删改查. Service层叫服务层,被称为服务,粗略的理解就是对一个或多个DAO进行的再次封装,封装成一个服务,所以这里也就不会是一个原子操作了,需要事物控制. ps:    service是将dao层的增删改查基本操作调用过来,封装到serv…