关闭

[置顶] Java Web项目开发简易流程

标签: 开发开发流程java web设计java
648人阅读 评论(0) 收藏 举报
分类:

未集成任何框架开发流程

1、设计数据库、数据表
2、创建动态Web工程(生成web.xml)
3、创建包model
A、根据表创建实体类->hibernate.cfg.xml
4、创建dao
A、根据系统功能,设计方法
6、创建dao.impl
B、实现对应的dao接口->配置相应的applicationContext.xml、web.xml
7、创建service
A、根据功能设计方法(80%跟dao类似)->配置相应的applicationContext.xml、web.xml
8、创建service.impl
A、实例化dao实现类,通过dao接口调用方法 ->dao直接调用方法不用实例化
9、可选(建议)
创建包test
A、编写静态方法,测试service中方法
10、系统加入设置编码filter
11、实现功能
A、创建JSP页面(位置已经无所谓啦)
B、创建页面对应Action,重写doGet方法,转发该JSP页面 —>struts进行设计—>struts.xml
C、设计该JSP页面
D、如果该页面需要展示数据,修改doGet方法,读取数据,放入request中
E、使用JSTL+EL表达式,展示数据
F、如果该JSP页面需要处理,重写doPost方法,然后跳转到某个Action或转发某个JSP页面 —>struts进行设计—>struts.xml
12、系统加入权限filter

使用S2SH集成框架后开发流程

1、数据库设计:根据需求设计相应的数据库、数据表。(数据表结构由hibernate实体类自动导出)
2、创建动态Web工程(生成web.xml)
3、创建包model
A、根据表创建实体类
B、对实体类进行Hibernate配置
a、@Entity:标志为一个实体类
@Table(name = “class”):标志这是一个表
@ID:在主键的get方法上面加
@GeneratedValue:标志主键自增长
b、配置不同实体类之间的关系映射(具体内容见博客下方:”关系映射:一对多“):如
@OneToMany(mappedBy = “engineer”)
或者@ManyToOne
@JoinColumn(name = “studentId”)
C、数据库与Hibernate:
a、拷入Hibernate的jar包。
b、修改“spring_hibernate_transaction.xml”中的内容:
<property name="annotatedClasses">
<list>
<!-- 列出全部的标有hibernate注解的PO类 -->
<value>com.ifly.online_repair.model.AdminInfo</value>
<value>com.ifly.online_repair.model.CommentInfo</value>
<value>com.ifly.online_repair.model.EngineerInfo</value>
<value>com.ifly.online_repair.model.NewsInfo</value>
<value>com.ifly.online_repair.model.StudentInfo</value>
</list>
</property>

c、修改”jdbc.properties“中关于数据库的基本信息。
d、修改”applicationContext.xml“:让Hibernate实体类与数据库中表对应。
applicationContext.xml中的内容:

    <import resource="spring_hibernate_transaction.xml" />//这个是上面要求修改的内容
    <!-- 自动搜索指定包及其子包下的所有Bean类 -->
    <context:component-scan base-package="com.ifly.online_repair" />//这条语句是spring框架扫描所有的类中需要注入的信息

ps:”ehcache.xml“为Hibernate中二级缓存需要的配置文件。
4、创建dao
A、根据系统功能,设计方法
5、创建dao.impl
A、a、在DaoImpl的类上加上:@Repository("adminDao"),代表这个类的简称,在需要实例化的类上加上:@Resource(name = "上面简称")
b、 private SessionFactory sessionFactory;,生成set方法,在上面加上@Resource(name = "sessionFactory")
B、在具体的方法中使用session:

Session session = sessionFactory.getCurrentSession();
session.beginTransaction();
session.save(adminInfo);
session.getTransaction().commit();
`

ps:注意导包
C、测试时使用: 不能直接实例化,要使用spring进行实例化。

ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
AdminDao adminDao =  ac.getBean("adminDao", AdminDao.class);//第一个参数:实现类的注解名称,第二个参数:实现类的类型
adminDao.addAdmin(adminInfo);

6、创建service
A、根据功能设计方法(80%跟dao类似)
7、创建service.impl
A、类内部定义dao类中的变量(不用实例化,使用spring进行注入)。
B、生成变量的set方法,上面使用注解:@Resource(name="commentDao")
C、在该类的上面加上:@Service("commentService")
8、可选(建议)
创建包test
A、编写静态方法,测试service中方法。
ps:实例化应该用spring来进行实例化,测试应该使用上面测试dao层方法是的实例化。

ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
AdminDao adminDao =  ac.getBean("adminDao", AdminDao.class);//第一个参数:实现类的注解名称,第二个参数:实现类的类型
adminDao.addAdmin(adminInfo);

9、系统加入设置编码filter
10、实现功能
A、创建JSP页面(位置已经无所谓啦,没有内容的jsp页面)
B、创建页面对应Action:使用Struts2来管理
a、拷jar包
b、”web.xml“中配置
c、创建Action类:类的上方加上

@Scope("prototype")
@Controller("myNewsAction")  

对于Action类中的变量:

private CommentInfo commentInfo;
private NewsService newsService;

@Resource(name = "newsService")
public void setNewsService(NewsService newsService) {
    this.newsService = newsService;
    }
@Resource(name = "commentService")
public void setCommentService(CommentService commentService) {
    this.commentService = commentService;
    }

使用spring框架来对其进行管理(实例化),生成set方法,在上面使用@Resource(name = "commentService")
d、拷入”struts.xml“到src中,修改其中内容:

    <package name="index" namespace="/" extends="struts-default">
        <action name="index" class="com.ifly.bbs.struts.action.NewsAction"
            method="index">
            <result name="index">/WEB-INF/views/index.jsp</result>
        </action>
    </package>

ps:默认的方法为:execute()方法,但是在“method=”“”属性中指定方法是,就会执行特定的方法。
C、设计该JSP页面
D、如果该页面需要展示数据,在Action中获取数据
E、使用JSTL+EL表达式,展示数据
F、如果该JSP页面需要处理,在Action中处理,然后跳转
11、权限filter使用:核心为拦截器的框架。

关系映射:一对多:

(1)、根据表结构写出对应的类,包括主键、外键、所有属性
(2)、在“多”的类中,加“一”的对象(注意:切记将外键注释)
在“一”的类中,加“多”的Set结合,同时实例化
(3)、在“多”的类中,在get对象方法上 :
@ManyToOne
@JoinColumn(name=”userId”) // userId:外键,上面所注释的那行
(4)、在“一”的类中,在get集合方法上:
@OneToMany(mappedBy=”user”) // user:自己在“多”类中定义的属性名字

0
0
查看评论

java web项目开发流程

项目开发流程 1 需求分析 对项目功能的阐述。 如系统的登录,注册,查询,浏览,管理等。 2 系统分析 1、用例图 显示系统和系统外实体之间的交互。即对需求分析过程中项目操作的实现。 2、类图 显示了模型的静态结构,类的内部结构及类与类之间的关系。...
  • sinat_34233802
  • sinat_34233802
  • 2017-01-08 17:08
  • 418

Java Web项目开发流程

1.Web项目开发流程图解   2.Web项目开发的细节(转载) 任何一个项目或者系统开发之前都需要定制一个开发约定和规则,这样有利于项目的整体风格统一、代码维护和扩展。由于Web项目开发的分散性、独立性、整合的交互性等,所以定制一套完整的约定和规则显得尤为重要。本文档将定制一系列约...
  • u012843873
  • u012843873
  • 2016-09-29 09:39
  • 2017

一个简单的Java Web项目搭建流程

今天试图在服务器上搭建一个web服务器,顺便回顾了java web项目的入门,使用Servlet处理HTTP请求,并记录日志等操作。当很久没有做过web项目时,有些东西还是很容易忘记的。   Maven配置 使用maven进行整个项目的构建,使用intellij idea IDE...
  • clamaa
  • clamaa
  • 2017-04-11 09:51
  • 753

基于MVC开发模式的javaWeb项目开发流程

一、MVC模式简单介绍 M-->model--->模型层-->entity/dao/service V--> view -->视图层-->jsp/html… C-->control-->控制器-->servlet 模型层:封装对数据库...
  • jiang_xinxing
  • jiang_xinxing
  • 2016-12-25 09:51
  • 3909

项目开发的简易流程

最近整理了一下项目的开发流程,大家可以欣赏一下。 1、通过as创建项目 命名mkt 公司名称 com.aynu  意图命名 CommonActivity (驼峰命名) 2、抽取 app 下的 build.gradle 文件   目的:实现统一化管理(多mod...
  • GL_MINE_CSDN
  • GL_MINE_CSDN
  • 2017-07-13 09:28
  • 98

web项目开发的一般流程

1.需求确定2.分析与设计(1)架构分析与设计(2)业务逻辑分析(3)业务逻辑设计(4)界面设计3.开发环境搭建4.开发-测试-开发-测试5.文档编纂在这里注意的是:各个阶段过程都是有文档的,需求有需求的文档,设计有设计的文档,测试也有测试的文档. 首先来看需求确定:需求确定通过各种手段确...
  • yjsuge
  • yjsuge
  • 2011-06-19 23:35
  • 8890

JAVA WEB项目开发案例精粹之二,投票系统

系统架构 应用服务器: Servlet容器:Tomcat 数据库服务器:MySQL 第三方工具(插件)应用 图表工具:JFreeChart 学知识点 使用jsp+struts2+jdbc+JFreeChart进行开发学习MySQL的基本使用学会简单的使用JFreeChart画柱...
  • github_36194559
  • github_36194559
  • 2016-09-22 21:33
  • 2015

使用Eclipse进行Java Web项目开发注意事项-Tomcat配置

web项目无法部署到eclipse配置的本地 http://www.open-open.com/lib/view/open1378948013209.html tomcat 一、发现问题 在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好...
  • youngage
  • youngage
  • 2016-07-21 19:03
  • 1153

java web,开发注意事项

导出的jar如何让springMVC能扫描到? 开发中发现,打包成jar然后再导入到项目中springMVC扫描不到,于是查找资料终于解决了这个问题。 怎么导出jar? 将jar配置到项目? 新建一个文件夹用于存放jar的 然后选择要设置的jar,点击fini...
  • wzj0808
  • wzj0808
  • 2017-01-01 23:52
  • 432

web项目开发一般流程

1、需求分析 2、分析与设计  架构分析与设计 业务逻辑分析 业务逻辑设计 界面设计 3、开发环境搭建 4、开发-测试-开发-测试 5、文档编纂
  • zzxuan6
  • zzxuan6
  • 2013-02-24 11:06
  • 112
    个人资料
    • 访问:187472次
    • 积分:3348
    • 等级:
    • 排名:第11952名
    • 原创:180篇
    • 转载:41篇
    • 译文:0篇
    • 评论:13条
    文章分类