- 浏览: 11845 次
最新评论
文章列表
当你准备要启动创建一个新网站时,选择一个合适的 web 托管服务器是一件困难的事。即使是对于经验丰富的开发者来说面对大量提供不同类型服务和优势的主机托管服务商也很难给出完美的决策,它们各有各的优点和缺点而 ...
OGNL表达式语言: (Action将数据放入其中,JSP页面可从中取出数据)
基本语法
#bar.foo.blah(如果需要访问的属性属于根对象,则可直接访问该属性,如blah,否则必须使用一个对象名作为前缀修饰该属性,#bar.blah)
属性访问器:
Struts提供了一个特殊的OGNL PropertyAccessor(属性访问器),它可以自动搜寻Stack Context所有实体(从上而下),直到找到与求值表达式匹配的属性
例:Stack Context中包含两个根实例:animal和person,这两个实例都包含"name"属性,而anim ...
Struts2的国际化
- 博客分类:
- Struts2
Struts2的国际化: (建立在java国际化基础之上)
mess_zh_CN.properties:(该文件应放在类加载路径下)
loginPage=登录页面
succTip=欢迎您已经登录
login=登录
加载全局资源文件:
struts.xml:
<constant name="struts.custom.i18n.resources ...
Convention插件与"约定"支持
- 博客分类:
- Struts2
使用Convention,必须将Struts2下的struts2-convention-plugin-*.*.*.jar复制到WEB-INF/lib路径下
Action的搜索和映射约定:(它会自动搜索位于action、actions、struts、struts2包下的所有java类)
会把如下java类当做Action:
>所有实现了com.opensymphony.xwork2.Action的java类 >所有以Action结尾的java类 ...
使用PreResultListener
- 博客分类:
- Struts2
它是一个监听器接口,它可以在Action完成控制处理之后,系统转入实际的物理视图之间被回调
public class LoginRegistAction
extends ActionSupport
{
...
public String execute() throws Exception
{
ActionInvocation invocation = ActionContext
.getContext().getActionInvocation();
invocation.addPreResultListener(new PreRe ...
通常我们使用hibernate总会写一个HibernateUtil类,大体这样:
public class HibernateUtil
{
public static final SessionFactory sessionFactory;
static
{
try
{
//采用默认的hibernate.cfg.xml来启动一个Configuration的实例
Configuration configuration ...
Hibernate的各种查询
- 博客分类:
- Hibernate
命名查询:
将hql语句放在映射文件的<hibernate-mapping.../>中,而不是代码中,就像这样:
<!--定义命名查询-->
<query name="myNamedQuery">
from Person as p where p.age > ?
</query>
执行命名查询:
//执行命名查询
List pl = sess.getNamedQuery("myNamedQuery")
//根据HQL语句里参数索引为参数 ...
dwr的include问题
- 博客分类:
- DWR
昨天碰到一个问题无法解决,知道的话帮一下。谢谢
将这个类暴露给客服端:
public class MessageDwr
{
//该前端处理类所依懒的业务逻辑组件
private MessageService messageService;
public void setMessageService(MessageService messageService)
{
this.messageService = messageService;
}
//创建一条消息
//虽然提供了HttpSession参数,但浏览器javascript调用时无需传入该 ...
Struts2的配置
- 博客分类:
- Struts2
Struts2应用开发步骤:
1.将Struts2的lib文件夹下的commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar、freemarker- 2.3.16.jar、javassist-3.7.ga.jar、ognl-3.0.jar、struts2-core-2.2.1.jar、xwork-core-2.2.1.jar复制到 Web应用WEB-INF/lib路径下
2.在web.xml中配置核心Filter:
<filter>
<filter-name>struts2</fil ...
DWR的WebContext对象用法
- 博客分类:
- DWR
DWR提供了两种方式访问ServletAPI:
1.使用WebContext:
//这种方式简单,但与DWRAPI耦合
public void addSession(String name)
{
WebContext wc = WebContextFactory.get();
wc.getSession(true).setAttribute("user", name);
}
2.直接访问Servlet API:
public void addSession(String name,HttpSession sess)
{
se ...
DWR与spring的整合
- 博客分类:
- DWR
服务器类:
package com.dwr;
public class DwrSpring
{
public String hello(String name)
{
return name+",这是dwr与spring的整合";
}
}
web.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...
DWR的engine.js
- 博客分类:
- DWR
engine.js对于DWR非常重要,engine.js和util.js相当于DWR的两个静态函数库,使用DWR时engine.js必须导入,util.js可以简化DOM操作选择导入,Ajax通常是异步调用,因此发送请求的顺序与返回的顺序并不一定一致,要想使其一致可以:
dwr.en ...
public class SimpleCallback
{
public String hello(String name)
{
return name+"简单回调与json回调";
}
}
SimpleCallBack对应的javascript对象为hello
简单回调:
//data为服务器响应数据
function callbac(data)
{
alert(data);
}
//javascript调用
hello.hello("wang",callbac);
也可使用匿名回调:
hello.h ...
使用<create.../>元素配置创建器:
<!-- creator指定所使用的创建器,javascript指定所生成的javascript对象名 ,
scope指定所生成的javascript对象放到哪个范围-->
<create creator="..." javascript="..." scope="...">
<!-- 不同的创建器的param元素时不一样 -->
<param name="..." value=".. ...