javaweb开发中有servlet,model,po,vo,dao,daoimpl的属于啥框架

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javaweb开发中有servlet,model,po,vo,dao,daoimpl的属于啥框架相关的知识,希望对你有一定的参考价值。

servlet:一般作控制器
model:数据库实体对象
PO(persistant object) 持久对象
在o/r
映射的时候出现的概念,如果没有o/r映射,就没有这个概念存在了.通常对应数据模型(数据库),本身还有部分业务逻辑的处理.可以看成是与数据库中的表
相映射的java对象.最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合.PO中应该不包含任何对数据库的操作.

VO(value object) 值对象
通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已.但应是抽象出的业务对象,可以和表对应,也可以不,这根据业务的需要.个人觉得同DTO(数据传输对象),在web上传递.

BO(business object) 业务对象
从业务模型的角度看,见UML元件领域模型中的领域对象.封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作.

POJO(plain ordinary java object)
简单无规则java对象
纯 的传统意义的java对象.就是说在一些Object/Relation
Mapping工具中,能够做到维护数据库表记录的persisent object完全是一个符合Java
Bean规范的纯Java对象,没有增加别的属性和方法.我的理解就是最基本的Java
Bean,只有属性字段及setter和getter方法!.

DAO(data access object)
数据访问对象
是sun的一个标准j2ee设计模式,这个模式中有个接口就是DAO,它负责持久层的操作.为业务层提供接口.此对象用于访问数据库.通常和PO结合使
用,DAO中包含了各种数据库的操作方法.通过它的方法,结合PO对数据库进行相关的操作.夹在业务逻辑与数据库资源中间.配合VO,
提供数据库的CRUD操作...

DTO (Data Transfer
Object)数据传输对象
主要用于远程调用等需要大量传输对象的地方。
比如我们一张表有100个字段,那么对应的PO就有100个属性。
但是我们界面上只要显示10个字段,
客户端用WEB service来获取数据,没有必要把整个PO对象传递到客户端,
这时我们就可以用只有这10个属性的DTO来传递结果到客户端,这样也不会暴露服务端表结构.到达客户端以后,如果用这个对象来对应界面显示,那此时它的身份就转为VO

daoimpl:dao接口的实现类
参考技术A 单从你的分层来看,应该是属于MVC架构。
具体框架常见的有Struts,Spring。
希望对你有帮助!
参考技术B 需要看配置文件 和 jar包的追问

怎么看的呢,这些我都不太懂

追答

xml文件

JavaWeb编程servlet初级应用

1.MVC(model,view,controller)
M:模型层(service(biz)\dao\javaBean)
V:视图层(jsp,html)
C:控制层(核心控制器)(Servlet)
2.写一个servlet小服务程序步骤
2.1、创建一个web项目,然后新建一个servlet类(继承HttpServlet);
2.2、在web.xml中做servlet配置信息
<!-- servlet实例化信息 -->
<servlet>
<servlet-name>demoServlet01</servlet-name>
<servlet-class>com.chinasofti.demo.DemoServlet01</servlet-class>
</servlet>
<!-- servlet映射信息 -->
<servlet-mapping>
<servlet-name>demoServlet01</servlet-name>
<url-pattern>/demoServlet01</url-pattern>
</servlet-mapping>
2.3、分别在doGet(),doPost()方法中处理用户请求并做响应;
request接收数据
调用业务逻辑层代码进行处理
response把处理结果再返回给客户端
在jsp页面中,对结果内容进行显示,使用JSTL和EL表达式

2.4、通过http://localhost:8080/web008/demoServlet01(web.xml中配置的servlet映射地址)。资源名称:html,jsp,servlet,img,doc文档...

3.servlet生命周期
3.1初始化阶段(实例化操作)init()方法
a.tomcat容器启动时 <load-on-startup>1</load-on-startup>(根据数字大小从小到大进行初始化)
b.通过第一次访问URL进行实例化,仅是第一次(servlet多线程单实例)
3.2服务阶段
doPost,doGet,service()
3.3销毁阶段(服务器正常停止或重启)
destory()

4.字符集编码设置

response.setContentType("text/html");
response.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");//对以上的合并 //text/html以文本/html格式显示, text/plain无格式
5.参数配置
5.1全局变量配置:直接在web.xml中配置
<!-- 全局变量 -->
<context-param>
<param-name>sName</param-name>
<param-value>测试系统</param-value>
</context-param>

获取配置文件中的全局变量:
String sName=config.getServletContext().getInitParameter("sName");

5.2局部变量配置:在某个servlet实例化中配置
<servlet>
<servlet-name>demoServlet02</servlet-name>
<servlet-class>com.chinasofti.demo.DemoServlet02</servlet-class>
<!-- 局部变量 -->
<init-param>
<param-name>sysName</param-name>
<param-value>xxx系统</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
获取配置文件中的局部变量:
String sName=config.getServletContext().getInitParameter("sName");
String sysName=config.getInitParameter("sysName");//拿到的是web.xml中servlet实例化信息中的参数信息.

































































以上是关于javaweb开发中有servlet,model,po,vo,dao,daoimpl的属于啥框架的主要内容,如果未能解决你的问题,请参考以下文章

java_第一年_JavaWeb(10)

JavaWeb学习路线

JavaWeb案例:登陆和注册

JavaWeb编程servlet初级应用

JavaWeb三大组件之Servlet

javaWeb中servlet开发——过滤器