1:整体目录

(1)完成UserSerivce接口

(2)完成UserSerivceImpl类,继承UserSerivce接口

(3)写测试类

2:UserSerivce接口

 1 package com.demo.service;
 2
 3 import java.util.List;
 4
 5 import com.demo.model.User;
 6
 7 public interface UserService {
 8     /**
 9      * 添加用户
10      * @param user
11      * @return
12      */
13     public boolean add(User user);
14
15     /**
16      * 修改用户
17      * @param user
18      * @return
19      */
20     public boolean update(User user);
21
22     /**
23      * 删除用户
24      * @param user
25      * @return
26      */
27     public boolean delete(User user);
28
29     /**
30      * 根据id获取用户
31      * @param obj
32      * @param id
33      * @return
34      */
35     public User getById(Class obj,int id);
36
37     /**
38      * 统计符合一定条件用户的数量
39      * @param hql
40      * @param param
41      * @return
42      */
43     public int getCount(String hql,String[] param);
44
45     /**
46      * 查询符合一定条件的用户
47      * @param hql
48      * @param param
49      * @return
50      */
51     public List<User> query(String hql,String[] param);
52
53 }

3:UserSerivceImpl类

package com.demo.service;import java.util.List;import com.demo.dao.BaseDAO;
import com.demo.model.User;public class UserServiceImpl implements UserService {private BaseDAO dao = new BaseDAO();@Overridepublic boolean add(User user) {boolean flag = false;flag = dao.add(user);return flag;}@Overridepublic boolean delete(User user) {boolean flag = false;flag = dao.delete(user);return flag;}@Overridepublic User getById(Class obj, int id) {User u = (User)dao.get(User.class, id);return u;}@Overridepublic int getCount(String hql, String[] param) {int cnt = 0;cnt = dao.getCount(hql, param);return cnt;}@Overridepublic List<User> query(String hql, String[] param) {List<User> list = dao.query(hql, param);return list;}@Overridepublic boolean update(User user) {boolean flag = false;flag = dao.update(user);return flag;}}

4:TestUserSerivce类

注意统计Count的hql语句:

select count(*) from User u where u.userName=?
package com.demo.test;import com.demo.model.User;
import com.demo.service.UserService;
import com.demo.service.UserServiceImpl;public class TestUserService {public static void main(String[] args) {UserService us = new UserServiceImpl();//test addUser user1 = new User();user1.setUserName("asdf");user1.setUserPwd("1234");us.add(user1);//test deleteUser user2 = new User();user2.setId(3);us.delete(user2);//test getByIdUser user3 = us.getById(User.class, 4);System.out.println(user3.getId()+"-->"+user3.getUserName()+"-->"+user3.getUserPwd());        //test CountString[] param = {"asdf"};int cnt = us.getCount("select count(*) from User u where u.userName=?", param);        System.out.println("共有asdf "+Integer.toString(cnt)+" 个。");//test query//test updateUser user4 = new User();user4.setId(4);user4.setUserPwd("000000");us.update(user4);}
}

转载于:https://www.cnblogs.com/CheeseZH/archive/2013/03/01/2938880.html

Hibernate【3】——Service层相关推荐

  1. java action dao_java中Action层、Service层和Dao层的功能区分

    一.Action/Service/DAO简介: Action是管理业务(Service)调度和管理跳转的. Service是管理具体的功能的. Action只负责管理,而Service负责实施. DA ...

  2. [转]JAVA中Action层, Service层 ,modle层 和 Dao层的功能区分

    首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操 ...

  3. Spring Boot神操作-多个数据源Service层封装

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者:@pdai pdai.tech/md/spring/spri ...

  4. Spring Boot骚操作-多数据源Service层封装

    原文:https://www.pdai.tech/md/spring/springboot-data-multi.html mysql, es, mongodb 三个数据源用配置文件方式连接,JPA只 ...

  5. java 框架 Dao层 Mapper层 controller层 service层 model层 entity层 简介

    目录 简介 entity层 mapper层 service层 controller层 简介 SSM是sping+springMVC+mybatis集成的框架. MVC即model view contr ...

  6. service 层 拼接的html 代码如何直接返回_软件系统的分层,有效降低层与层之间的依赖...

    在分解复杂的软件系统时,架构师和程序员用得最多的技术之一就是分层.个人学习开发的时候,软件系统大多数是三层架构,也就是大家非常熟悉的表现层.领域层(业务层).数据源层.随着互联网的发展,智能手机普及手 ...

  7. 关于service层,dao层,controller层

    SSM是sping+springMVC+mybatis集成的框架. MVC即model view controller. model层=entity层.存放我们的实体类,与数据库中的属性值基本保持一致 ...

  8. Dao层,Mapper层,controller层,service层,model层都有什么作用

    原文链接 SSM是sping+springMVC+mybatis集成的框架. MVC即model view controller. model层=entity层. 存放我们的实体类,与数据库中的属性值 ...

  9. SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层都有什么作用

    SSM是sping+springMVC+mybatis集成的框架. MVC即model view controller. model层=entity层.存放我们的实体类,与数据库中的属性值基本保持一致 ...

  10. pojo层、dao层、service层、controller层的作用

    pojo层(model) 实体层 数据库在项目中的类 model是模型的意思,与entity.domain.pojo类似,是存放实体的类. 类中定义了多个类属性,并与数据库表的字段保持一致,一张表对应 ...

最新文章

  1. jstack 使用(转)
  2. MPB:南土所褚海燕组-​非靶标代谢组测定土壤可提取有机碳组分
  3. python基础代码事例-学习笔记:python3,代码。小例子习作(2017)
  4. Python类的封装
  5. opencv 训练人脸对比_【项目案例python与人脸识别】基于OpenCV开源计算机视觉库的人脸识别之python实现...
  6. 字典-字典的循环遍历
  7. 一段JAVA签名算法的PHP改写
  8. linux网络编程之网络应用设计模式、分层模型、通信过程
  9. mysql slave修改_MySql主从复制(初学笔记)
  10. JNCIS翻译文档之------接口3
  11. c++ primer打卡(三)
  12. Test2 unit2+3
  13. 图扑软件数字孪生 | 基于 BIM 技术的可视化管理系统
  14. Vray材质速查手册(精讲)
  15. Linux下重启tomcat
  16. Windows系统完全卸载删除 Node.js
  17. 3分钟带你轻松了解贝塞尔曲线(cubic-bezier)
  18. 国家职业资格目录(执业资格,从业资格,职称)与各类国家证书
  19. 蓝桥杯嵌入式基础板模块之LED模块不受控制的解决方法
  20. java集成oppo推送sdk

热门文章

  1. 多线程的关键是,不同线程对象要独立
  2. 微星主板不用DrMOS了?
  3. 由一个照片,可以看出云是个物体
  4. IntellJ IDEA可以单独调试一个类
  5. python读取excel数据生成word_利用Python将excel数据读取到word表格
  6. python你!_你都用 Python 来做什么?
  7. int转字符串_python3基础01数值和字符串(一)
  8. 设置mysql的schema_MySQL Performance-Schema(一) 配置篇
  9. 李彦宏宣布百度架构调整:智能云事业部升级
  10. 设计模式(建造者模式)