spring MVC里面service接口类的作用
来源:互联网 发布:普罗米修斯软件 编辑:程序博客网 时间:2024/06/07 16:04
现在编程是面向接口编程,举个例子,假如我的代码以前是哪mybaties写的,现在我要那hibernate写,我就只用修改service的实现类和Dao的实现类。我的Control层调用的是service的接口类,所以我就不用修改Control层的内容。修改Service实现类就是让表示层不依赖于业务层的具体实现,实现业务层与表示层的分离。修改Dao层实现类就是让业务层与以来持久层,实现业务层与持久层的分离。
hibernate与mybaties的区别就是,mybaties有一个mapper文件,Dao层只有接口类,而hibernate的Dao层即有接口类又有实现类,实现类里面如下所示
package com.jointem.study.dao.impl;import com.jointem.study.dao.UserDao;import com.jointem.study.entity.Student;import org.hibernate.Query;import org.hibernate.SessionFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Repository;import java.util.List;/** * @Title: UserDaoImpl * @Description: * @Author: lcb * @Date: 2017年07月19日 * @Version: v1.0.0 * @Copyright: 2017 www.jointem.com Inc. All rights reserved. * @Update: 1. Create File */@Repository("userDao")public class UserDaoImpl implements UserDao{ @Autowired SessionFactory sessionFactory; public List<Student> getList() { String hql = "from Student"; Query query=sessionFactory.getCurrentSession().createQuery(hql); return query.list(); } public void addStudent(Student student) { sessionFactory.getCurrentSession().save(student); } //删除用户 public void delStudent(Integer id) { Student student =(Student)sessionFactory.getCurrentSession().get(Student.class,1); sessionFactory.getCurrentSession().delete(student); } public Student setList1(String name) { String sql = "select * from Student where name=:name"; Query query=sessionFactory.getCurrentSession().createSQLQuery(sql).setParameter("name",name); List<Student> students=query.list(); if(students.size()>0 ){ return students.get(0); } return null; }// //修改用户// public void updateUser(Student student) {// Session session = sessionFactory.getCurrentSession();// session.beginTransaction();// String hql = ("update Student u set u.name = ?,u.password = ?,u.loginDate = ? where u.id = ?");// Query query = session.createQuery(hql);// query.setParameter(0, student.getName());// query.setParameter(1, student.getPassword());// query.setParameter(2, student.getLoginDate());// query.setParameter(3, student.getId());// query.executeUpdate();// session.getTransaction().commit();// }}
阅读全文
0 0
- spring MVC里面service接口类的作用
- 在spring-mvc的非controller类里面调用service方法
- 简单配置Spring MVC里面的UEditor
- Spring MVC里面的预防 SQL 注入
- Spring里面各种包的作用
- spring mvc 的 HandlerExceptionResolver 接口
- spring mvc @Qualifier注解接口来注入 @Service
- spring mvc 不用注入方式,直接获取Service接口方式
- Spring MVC @Autowired、@Controller、@Service 的实现
- spring @component@service@repository@component 的作用
- spring mvc的DefaultServlet的作用
- Spring Mvc 的@ResponseBody注解的作用
- Spring中<mvc:annotation-driven />的作用
- spring mvc几个重要的核心类和接口
- Spring MVC中一般类使用service
- Spring MVC中一般类使用service
- Spring mvc <mvc:resources ***/> 作用
- (spring mvc)spring mvc 核心类与接口
- 插入排序之折半插入排序
- Beautiful Soup 4.2.0 文档
- POS主密钥与工作密钥关联详解
- java-next(),nextLine()区别
- HttpClients Post请求
- spring MVC里面service接口类的作用
- VMware快照受损文件是如何快速修复原理
- 错误
- kaggle数据挖掘竞赛初步--Titanic<数据变换> 完整代码: https://github.com/cindycindyhi/kaggle-Titanic 特征工程系列: Titanic
- Linux设备模型(1)_基本概念
- tomcat session 共享
- 会声会影视频遮罩正确使用方式
- Unable to execute dex: method ID not in [0, 0xffff]: 65536
- 文章标题