`
condeywadl
  • 浏览: 78262 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

MyLibrary Service设计(一)-主页设计

阅读更多

  这两天没日没夜的在忙.net的工作~~连写个代码更新个bolg都没时间,总算利用午觉时间研究了会java 爽啊~~~

 

  下面就开始做业务层了~先从主页入手 因为主页简单嘛~~主要就设计了2个登陆(管理员和用户) ,1个注册 算起来一共用了3   个接口 本来2个就可以了 然后就是贴出这三个接口吧~~再讲讲遇到的问题

 

 MainManageLogin(管理员登陆)

 /**

 * 管理员登陆接口
 * 
 * @author ConDey
 * 
 */
public interface MainManageLogin {

	/**
	 * 验证管理员是否合法
	 * 
	 * @param user
	 *            登陆管理员
	 * @return true 管理员合法 false 管理员不合法
	 */
	public boolean checkManage(User user);

	public SessionFactory getSessionFactory();

	public void setSessionFactory(SessionFactory sessionFactory);

	public UserDao getUserDao();

	public void setUserDao(UserDao userDao);

}

 MainUserLogin 用户登陆

 

/**
 * 普通用户登陆接口
 * 
 * @author ConDey
 * 
 */
public interface MainUserLogin {

	/**
	 * 验证用户是否合法
	 * 
	 * @param user
	 *            登陆用户
	 * @return true 用户合法 false 用户不合法
	 */
	public boolean checkUser(User user);

	public SessionFactory getSessionFactory();

	public void setSessionFactory(SessionFactory sessionFactory);

	public UserDao getUserDao();

	public void setUserDao(UserDao userDao);
}

 

    MainRegister 用户注册

   /**

 * 用户注册接口
 * 
 * @author ConDey
 * 
 */
public interface MainRegister {

	/**
	 * 检测用户名是否可用
	 * 
	 * @param userName
	 * @return true 该用户名未被注册 false 已存在 不可用
	 */
	public boolean CheckName(String userName);

	/**
	 * 新用户注册
	 * 
	 * @param newUser
	 *            新用户注册
	 * @return true 注册成功 false 注册失败
	 */
	public boolean RegisterUser(User newUser);

	public SessionFactory getSessionFactory();

	public void setSessionFactory(SessionFactory sessionFactory);

	public UserDao getUserDao();

	public void setUserDao(UserDao userDao);

}

 

    下面说一说到最近想到的问题吧

    1.  数据库隔离级别 因为用户名是不能重复的吧 所以这里涉及到了虚读的问题 有两种方案 悲观锁和乐观锁 因为持久层已经写好的缘故 乐观锁太麻烦了 但是悲观锁又太影响效率 不知道怎么办 我在处理spring声明式事务的时候,发现spring的事务能定义隔离级别 因为涉及到的问题 我用了最高等级的隔离级别,这样损失的并发性,所以,这个问题教会了我一个道理...设计是很重要的。

 

    2. hibernateDaoSupport的问题 又是spring的问题 本来想使用hibernateDaoSupport的,但是自己又犹豫了起来,到底用不用呢,google了一下,发现很多人都有这个烦恼,google之后,又观察了下源代码,发现hibernateDaoSupport只是简单的封装了一下,自己完全可以舍弃模板,一方面方便管理,另一方面可扩展性也强一些,最后还是自己生成session吧。

 

    3. 声明式事务 话说这个东西大部分人在使用,和编程式事务最大的不同就是声明式事务完全不需要自己管理,方便安全。进而还是使用了注解形式的声明式事务吧。

 

    4. 最后一个,spring多配置文件的问题,网上找了很多资料,但是都没有亲自去试,过一段时间再把这个问题的解决方法贴出来吧。

 

    5. 代码肯定有很多地方有不足或者错误,因为并没有实际运行过,所以并不能作为参考,只能算记录下我做系统的一个流程与思想吧。

分享到:
评论

相关推荐

    MyLibrary-master.zip

    《MyLibrary-master.zip》是一个专为初学者设计的图书馆管理系统,它涵盖了登录、注册、图书借阅与归还以及常见的数据操作等基本功能。这个项目使用了SSM(Spring、SpringMVC、MyBatis)框架,这是一个在Java开发中...

    图书综合管理系统-mylibrary

    《图书综合管理系统-mylibrary》是一个专门针对图书馆管理而设计的信息系统。这个系统旨在提供全面、高效、便捷的图书管理服务,以满足图书馆日常运营的各种需求。以下是对该系统的详细解析: 一、系统概述 图书...

    MyLibrary 我的图书馆

    而“我的图书馆(MyLibrary)”是一款专为Android平台设计的应用,它允许用户轻松地读取XML文件来获取图书信息,并且提供了个性化的功能,如添加和修改个人信息,以及查找本地的图书信息。本文将深入解析这款应用的...

    XBMC.MyLibrary-1.3.1.zip_it

    XBMC.MyLibrary-1.3.1.zip 是一个专为XBMC(Xbox Media Center,后更名为Kodi)设计的扩展工具,版本号为1.3.1。这个工具的主要功能是增强用户的媒体库体验,使得用户能够在XBMC平台上浏览和访问更多的电影资源。它...

    MyLibrary工具类库

    "MyLibrary"工具类库就是这样一个为开发者提供便利的库,它旨在简化常见的开发任务,如UI交互、数据加载和JSON解析。本文将深入探讨这个库的三大核心功能:使用注解简化视图绑定和点击事件处理、三级缓存机制实现...

    C语言课程设计--C输入输出库函数的程序设计.doc

    C语言课程设计的主要目标是实现C输入/输出库函数的程序设计,包括创建自定义的库函数来替代标准库中的函数,如mygets、myputs、myprintf和myscanf,并将这些函数集成到名为mylibrary.lib的库中。以下是对这些函数的...

    MyLibrary20201003-21:47_stm32f103c8t6_源码

    STM32F103C8T6是意法半导体(STMicroelectronics)生产的一款基于ARM Cortex-M3内核的微控制器,广泛应用于各种嵌入式系统设计中。这款芯片具有丰富的外设接口和高性能计算能力,适用于工业控制、物联网设备、智能...

    mylibrary-debug.aar

    文件下载,多线程下载。断点下载等简单封装的aar包

    MyLibrary

    在MyLibrary项目中,CSS被用来设计美观的用户界面,包括颜色方案、字体选择、按钮样式以及图书卡片的布局。通过CSS,开发者可以确保整个图书馆的视觉一致性,提供良好的用户体验。 此外,为了实现交互性,MyLibrary...

    管理系统系列--MYLIBRARY图书管理系统 是基于Spring Boot + Mybatis 开发的图书管理系统.zip

    MYLIBRARY图书管理系统是一款利用现代Web技术和Java框架构建的高效、易用的图书管理解决方案。该系统基于Spring Boot和Mybatis两大主流技术栈,旨在提供一个功能完备、可扩展的图书信息存储和检索平台。Spring Boot...

    mylibrary_master.zip

    "mylibrary_master.zip" 是一个包含Qt图书管理系统的源代码压缩包,主要使用C++语言编写,适合初学者学习Qt GUI(图形用户界面)和线程系统的基础应用。这个项目可能是一个简易的个人图书馆管理系统,用于管理和跟踪...

    mylibrary_tushuguanlixitong_

    读者登录图书管理软件系统进行在线借书、还书,此过程中可以依据书籍的编号和名字查询书籍详细信息,并生成读者的借阅记录供读者查询。管理员登录图书管理软件系统可以进行读者管理、书籍管理、借阅情况查询分析。...

    MyLibrary:我的图书馆

    "MyLibrary:我的图书馆"这个项目很可能是一个个人化、自定义化的图书管理软件,它可能旨在帮助用户整理、管理和查找他们的电子书籍资源。作为一个使用Kotlin编程语言构建的应用,我们可以深入探讨Kotlin语言的特点...

    图书管理系统数据库详细设计.docx

    ### 图书管理系统数据库详细设计知识点 #### 一、需求分析 **1.1 系统目标** - **信息管理系统(MIS)的构建:** 图书管理信息系统作为一个典型的信息管理系统(MIS),旨在通过后端数据库的建设和维护以及前端应用...

    图书管理系统数据库详细设计.pdf

    图书管理系统数据库设计是一个关键环节,它涉及到系统的整体架构和数据的高效存储与处理。这个系统的目标是实现图书管理的系统化、规范化和自动化,以优化图书馆的信息管理,提高工作效率,减轻工作人员负担。以下是...

    WPF封装成DLL方法

    每一个WPF应用程序都必须有一个Application实例,并且每个域中只能有一个Application实例存在。 - `Current`:获取当前域中的默认Application实例。 - `MainWindow`:获取主窗口实例。 - `Windows`:获取所有被...

    图书管理系统数据库详细设计.doc

    ### 图书管理系统数据库详细设计知识点 #### 一、需求分析 ...综上所述,图书管理系统数据库的详细设计涵盖了从需求分析到最终实施的全过程,涉及多方面的技术和知识,旨在构建一个高效、稳定的图书管理信息系统。

    图书管理系统数据库详细设计

    ### 图书管理系统数据库详细设计知识点解析 #### 一、需求分析 - **系统目标**: 图书管理信息系统(MIS)旨在实现信息管理的系统化、规范化和自动化。它包括两个主要部分:一是建立一个具有高度数据一致性和完整性...

    MyLibrary:一个完整的应用程序,用于访问Google图书API,并允许用户将图书添加到书架中

    我的图书馆一个用于搜索Google图书API并将图书添加到书架中以供以后查看的全栈应用程序请在Netlify上查看实时应用程序: ://mylibrary-google-books-api.netlify.app/ 这是我个人的项目,用于巩固我对React的了解,...

Global site tag (gtag.js) - Google Analytics