需求:简单的新闻管理系统,实现简单的增删改查功能

1.数据库表的建立   ID非空,数据类型看着给

2.写实体(entity)News.java   要与数据库中的字段相对应,(id,optimistic我没写,问题不大)
  1 package com.pay.boss.entity; //封装好的entity包,直接引用2 3 import java.util.Date;  //日期工具4 5 import javax.persistence.Column;6 import javax.persistence.Entity;7 import javax.persistence.EnumType;8 import javax.persistence.Enumerated;9 import javax.persistence.SequenceGenerator;10 import javax.persistence.Table;11 12 import com.pay.boss.enums.NewsCategory;//枚举13 import com.pay.boss.enums.NewsStatus;14 15 /**16  * Title: 新闻需求17  */18 19 @Entity20 @SequenceGenerator(name = "SEQ_STORE", sequenceName = "SEQ_NEWS_ID", allocationSize=1)  //主键生成策略21 @Table(name = "NEWS")   //映射数据库的一个表,表名为news22 public class News extends AutoIDEntity{23     24     private String newsNo;       //新闻编号25     private String summary;      // 摘要26     private String title;        //题目27     private String content;      //内容28     private String imgUrl;       // 图片路径29     private String author;       //作者30     private NewsCategory newsCategory; //新闻类别31     private NewsStatus status;        //新闻状态;      32     private Date createTime;     // 创建时间33     private Date updateTime;     //修改时间34     35     36     @Column(name = "NEWS_NO") //列的注解,显示name37     public String getNewsNo() {38         return newsNo;39     }40     public void setNewsNo(String newsNo) {41         this.newsNo = newsNo;42     }43     44     @Column(name = "SUMMARY")45     public String getSummary() {46         return summary;47     }48     public void setSummary(String summary) {49         this.summary = summary;50     }51     52     @Column(name = "TITLE")53     public String getTitle() {54         return title;55     }56     public void setTitle(String title) {57         this.title = title;58     }59     60     @Column(name = "CONTENT")61     public String getContent() {62         return content;63     }64     public void setContent(String content) {65         this.content = content;66     }67     68 69     @Column(name = "IMG_URL")70     public String getImgUrl() {71         return imgUrl;72     }73     public void setImgUrl(String imgUrl) {74         this.imgUrl = imgUrl;75     }76     77     @Column(name = "AUTHOR")78     public String getAuthor() {79         return author;80     }81     public void setAuthor(String author) {82         this.author = author;83     }84     85     @Enumerated(EnumType.STRING)  //枚举注解86     @Column(name = "NEWS_CATEGORY")87     public NewsCategory getNewsCategory() {88         return newsCategory;89     }90     public void setNewsCategory(NewsCategory newsCategory)         91        {92         this.newsCategory = newsCategory;93     }94     95     @Enumerated(EnumType.STRING)96     @Column(name = "STATUS")97     public NewsStatus getStatus() {98         return status;99     }
100     public void setStatus(NewsStatus status) {
101         this.status = status;
102     }
103
104     @Column(name = "CREATE_TIME", columnDefinition = "DATE")
105     public Date getCreateTime() {
106         return createTime;
107     }
108     public void setCreateTime(Date createTime) {
109         this.createTime = createTime;
110     }
111
112     @Column(name = "UPDATE_TIME", columnDefinition = "DATE")
113     public Date getUpdateTime() {
114         return updateTime;
115     }
116     public void setUpdateTime(Date updateTime) {
117         this.updateTime = updateTime;
118     }
119 }

3.写对应的dao接口及其实现

接口:NewsDao

package com.pay.boss.dao;import com.pay.boss.entity.News;public interface NewsDao {public News create(News news);  //增加信息;public News update(News news);  //更新信息;public void delete(News news);  //删除信息;public News findByNewsNo(String newsNO);  //通过编号查找    public News findById(Long id);  //通过id查找     id:逻辑主键;

}

实现:NewsDaoImpl

package com.pay.boss.dao.impl;import com.pay.boss.dao.DAOException;  //dao异常,用于抛出;
import com.pay.boss.dao.NewsDao;
import com.pay.boss.entity.News;
import com.pay.boss.dao.EntityDao;   //Ioc容器(依赖)注入sessionFactory;可以不定义这个dao,直接进行session注入;public class NewsDaoImpl implements NewsDao {private EntityDao entityDao;    //注入sessionFactory;public EntityDao getEntityDao(){return entityDao;                    //get可以不需要;
    }public void setEntityDao(EntityDao entityDao) {this.entityDao = entityDao;}@Override    //重写public News create(News news) throws DAOException {entityDao.persist(news);  //将实体保存在数据库中;return news;}@Overridepublic News update(News news) throws DAOException {return entityDao.merge(news);  //更新实体对象或者将实体保存在数据库中;
    }@Overridepublic void delete(News news) {entityDao.remove(news);}@Overridepublic News findByNewsNo(String newsNo) {String hql = "from News where newsNo=?";  //利用hql语言进行预编译;return entityDao.findUnique(News.class, hql, newsNo);}@Overridepublic News findById(Long id) {return entityDao.findById(News.class, id);}}

接下来开始写前端jsp页面

转载于:https://www.cnblogs.com/erwei/p/9485693.html

简单的一个月之设计实现内容1相关推荐

  1. 一个简单答题系统的设计与实现(二)

    在一个简单答题系统的设计与实现(一)博文中列出了需求分析,与详细设计,现在按照之前的详细设计开始一步一步实现. 文件设计(数据层设计) 该系统由于需求场景限制,在数据层利用文件和文件的读写实现查询.具 ...

  2. html 倒计时字体消失,最简单的一个网页倒计时代码 时间到期后会显示出提醒内容 收藏版...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 很多时候我们都是需要提醒自己做什么事情的,像我这么健忘的,更加需要倒计时之类的记录来提醒自己,这是我找到最简单简介的代码了! 最简单的一个网页倒计时代码 ...

  3. 十个简单好用的设计技巧[SM]

    复杂的设计技巧总是很花时间,也实在是-.复杂 (-_-||). 高级效果 为设计增色不少,但如果用得不对,只会影响用户对重点内容的关注.高级效果可能正好是一项好的设计的冲击力所在,但即便如此,也还是需 ...

  4. 零起点入门教程:用宜搭简单布局一个首页

    简介:[零起点入门系列教程]将会带给大家从业务视角出发由浅入深地学习用宜搭实现应用搭建.即便是没有任何代码基础的新手只要跟着系列课程,从0开始慢慢修炼,也能找到成功搭建应用的乐趣.今天第五讲,如何用宜 ...

  5. Asp.net MVC 仿照博客园的简单网站首页 列表设计

    本来我打算采用ajax提交请求,异步的请求获取数据,但是我发现如果这样的话就会拖慢开发的进度,拖长时间.所以在这篇博客中仿照首页的列表设计其实和左侧列表网站分类采用了同样的方式,通过局部视图的方式呈现 ...

  6. figma设计_Figma中简单,可重复使用的设计系统

    figma设计 Putting together a design system may seem like an unnecessary hassle. It's often easier to j ...

  7. .NET Core实战项目之CMS 第八章 设计篇-内容管理极简设计全过程

    写在前面 上一篇文章.NET Core实战项目之CMS 第七章 设计篇-用户权限极简设计全过程中我带着大家进行了权限部分的极简设计,也仅仅是一个基本的权限设计.不过你完全可以基于这套权限系统设计你的更 ...

  8. 16位计算机cpu电路图,简单16位CPU设计.doc

    简单16位CPU设计 简单16位CPU设计 一.实验内容 完成从指令系统到CPU的设计,编写测试程序,通过运行测试程序对CPU设计进行正确性评定.具体内容包括:典型指令系统(包括运算类.转移类.访存类 ...

  9. Shell基础(一):Shell基础应用、简单Shell脚本的设计、使用Shell变量、变量的扩展应用...

    一.Shell基础应用 目标: 本案例要求熟悉Linux Shell环境的特点,主要练习以下操作: 1> 切换用户的Shell环境        2> 练习命令历史.命令别名        ...

最新文章

  1. 汇编:模拟C语言实现break与continue
  2. LayoutInflater作用及使用
  3. mysql5.7初始密码查看及密码重置
  4. 力扣69. x 的平方根
  5. 在Python中使用MongoDB
  6. Python基本操作(二)注释、分隔
  7. python在线编程免费课程-吐血整理!程序员最爱的13个免费Python课程
  8. 四级网络工程师-操作系统
  9. matlab根号2,在matlab中,运行指令a=sqrt(2),计算结果a是精准的根号2吗
  10. 小程序对接企业微信客服
  11. 【粤教版必修二《信息系统与社会》】知识总结与题目分析
  12. pycharm:Updating Indices 解决办法
  13. 线性代数——矩阵的秩
  14. (python爬虫)拉勾网招聘信息爬取
  15. php订阅号怎么借服务号权限,微信订阅号已经认证能否有网页授权功能
  16. Iterator 的用法
  17. Kafka基于Zookeeper搭建高可用集群实战
  18. 参考文献标号字体_论文参考文献文字格式
  19. 应用包含Involution算子的RedNet实现Classification
  20. 线性代数[初等变换(三)]

热门文章

  1. Python flask 开发工具和框架安装
  2. UCGUI的模拟器UCGUISim详解
  3. [react] React v15中怎么处理错误边界?
  4. [react] React中如何监听state的变化?
  5. 前端学习(3323):高级设计说闭包
  6. 前端学习(3297):effect的使用
  7. react学习(67)--git 屏蔽文件不被追踪
  8. 前端学习(3104):react-hello-虚拟dom的两种创建方式
  9. 前端学习(3090):vue+element今日头条管理-参数传递
  10. 前端学习(2965):路由的参数传递