![](https://i-blog.csdnimg.cn/blog_migrate/29e6390cd7613b34bdc22e0c856207ec.png)
![](https://i-blog.csdnimg.cn/blog_migrate/003d81c4347d6e47afb29c5f0ebe54dc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a81102d177e37a9e86223a0b97f6c240.png)
![](https://i-blog.csdnimg.cn/blog_migrate/25e3d2a33bd66ed490a2c8c7c6348216.png)
下面简单解释下JPA和JDO:
![](https://i-blog.csdnimg.cn/blog_migrate/dbce95e09dc38544251384d0bff4defc.png)
![](https://i-blog.csdnimg.cn/blog_migrate/f23e3f7566db029b840ab8e9d5824839.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4555553748746b6560a96b23d5835099.png)
Portlet :
Portlet是基于Java的Web组件,由Portlet容器管理,并由容器处理请求,生产动态内容。Portals使用Portlets作为可插拔
用户接口
组件,提供
信息系统
的
表示层
。作为利用Servlets进行Web应用编程的下一步,Portlets实现了Web应用的模块化和用户中心化。 Portlet规范,即JSR(Java Standardization Request )168,是为了实现Portal和Portlet的互操作。它定义了Portlet和Portlet容器之间的合约,让Portlet实现个性化、表示和安全的API集。规范还定义了怎样在Portlets应用中打包Portlets。
Portlet与Servlet的区别
由于Portlet与Servlet存在若干不同之处,所以在编写基于Portlet应用时要注意以下几个问题:
Servlet
是与表现层无关的,所以一个完整的
Web
应用可以只有一个
Servlet
作为
Controller
。但是
Portlet
是与表现层相关的,表现层的多个
Portlet
将对应多个
Concrete Portlet
。
对于
Web
应用,我们可以将操作请求的处理流程分为两步,处理请求和展示结果。在传统
Servlet/JSP
应用中,请求和展示总是一起被执行的。但是在
Portlet
应用中,情况发生了改变:当
doView
或
doEdit
被调用的时候,仅展示部分被调用。这造成了在
Portlet
应用中处理与展示两个部分的执行频率并不相同,也就造成了
Portlet
应用的两阶段处理模式。
在
Portlet
应用中
URL
是动态生成的(
Portlet
提供一套
API
来完成)。
Portlet
不支持
forward
和
redirect
。
![](https://i-blog.csdnimg.cn/blog_migrate/5ab937c86fc98b8a7e6dc354571f21d5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/77781c8b858b09f4c32368f2950a8dc5.png)
上面说完了,就应该到spring core部分,这部分是核心,重点讲述的就是这部分。这部分只讲一些基本
![](https://i-blog.csdnimg.cn/blog_migrate/1f421367082398bc3b9ec0d0cfb70a3a.png)
测试代码:
![](https://i-blog.csdnimg.cn/blog_migrate/8d700f196ea2b5dbf4a934cf31ba3d66.png)
![](https://i-blog.csdnimg.cn/blog_migrate/d798bb0e542e8dd19b8558f00a6e3ba2.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1ebee386bd93dcf4a6b4ff5207438b97.png)