• 项目(1)----用户信息管理系统(3)---项目开发(业务处理层)


    项目开发---业务处理层

     这里主要实现下面两个包中的类,其实性质和Dao和Dao的实现类一样,但为了规范,这里在写接口和实现类

         1.com.study.user.service   //接口包

                1.UserService.java

        2. com.study.user.service.impl  //实现接口类

                1.UserServiceImpl.java

       3.DaoFacotory 类

       4.Globals类

       1.UserService.java

    import java.util.List;
    
    import com.study.user.model.User;
    
    public interface UserService {
     
         public void add(User user);
            
            public void del(String id);
            
            public void update(User user);
            
            public User  find(String id);
            
            public List<User> getAll();
    }

    2.UserServiceImpl.java

     1 import java.util.List;
     2 
     3 import com.study.user.dao.UserDao;
     4 import com.study.user.dao.impl.UserDaoImpl;
     5 import com.study.user.model.User;
     6 import com.study.user.service.UserService;
     7 import com.study.user.utils.DaoFacotory;
     8 
     9 public class UserServiceImpl implements UserService{  
    10     
    12 //    private UserDao dao =new UserDaoImpl(); 如果用这种模式那么每次调用都会创建一个对象,而通过下面就只创建一个对象
    13     
    14     private UserDao udao=DaoFacotory.getInstance().createDao("com.guigu.user.dao.impl.UserDaoImpl", UserDao.class);
    15     
    16     public void addUser(User user) {
    17           udao.add(user); 
    18     }
    19 
    20     public List<User> getAll() {       
    21         return udao.getAll();
    22     }
    23 
    24     public void del(String id) {
    25         udao.del(id);        
    26     }
    27 
    28     public void update(User user) {
    29         udao.update(user);        
    30     }
    31 
    32     public User find(String id) {
    33         
    34         return udao.find(id);
    35     }
    36 }

     3.DaoFacotory 类

     1 import com.study.user.dao.UserDao;
     2 /*
     3  * 这个通过单例模式来获得一个对象,在通过这个对象调用createDao方法,返回的也永远是同一个对象,这个很有用
     4  */
     5 public class DaoFacotory {
     6 
     7     private DaoFacotory() {
     8 
     9     }
    10 
    11     private static final DaoFacotory facotory = new DaoFacotory();
    12 
    13     // 提供共有的方法获取实例对象
    14     public static DaoFacotory getInstance() {
    15         return facotory;
    16     }
    17     /*根据不同的Dao类型创建不同的对象
    18      * 得到对象:DaoFacotory.getInstance().createDao("com.study.user.dao.impl.UserDaoImpl", UserDao.class);
    19      */
    20     public <T> T createDao(String className, Class<T> clazz) {
    21         try {
    22             T t = (T) Class.forName(className).newInstance();
    23             return t;
    24         } catch (Exception e) {
    25             System.out.println("这里错了");
    26             throw new RuntimeException();
    27         }
    28     }
    29 }

     4.Globals类

    /*
     * 因为我的兴趣爱好和类型是写在java类中而不是写在jsp界面中的,目的也是有更好的可操作性,所以单独建立这个类
     * 
     */
    public class Globals {
        
        public static String [] preferences ={"唱歌","跳舞","睡觉","学习","游戏","篮球"};
        
        public static String [] types={"博士生","研究生","本科生","专科生","高中生"};
    }
  • 相关阅读:
    VS2008编写MFC程序--使用opencv2.4()
    November 02nd, 2017 Week 44th Thursday
    November 01st, 2017 Week 44th Wednesday
    October 31st, 2017 Week 44th Tuesday
    October 30th, 2017 Week 44th Monday
    October 29th, 2017 Week 44th Sunday
    October 28th, 2017 Week 43rd Saturday
    October 27th, 2017 Week 43rd Friday
    October 26th, 2017 Week 43rd Thursday
    October 25th, 2017 Week 43rd Wednesday
  • 原文地址:https://www.cnblogs.com/qdhxhz/p/6416877.html
Copyright © 2020-2023  润新知