`
香菜的故事集锦II
  • 浏览: 3119 次
文章分类
社区版块
存档分类
最新评论

拦截器and国际化

阅读更多

从头来一遍

拦截器有点迷糊

还行没太乱

被一个无关紧要的类搞蒙圈了

 

1

先写一个拦截器

web里,一般这么写 public class LoginInterceptor extends AbstractInterceptor

 

下一个是方法

Public String intercept(ActionInvocation arg0)throws Exception

{

开始巴拉巴拉操作

如果成功 就放行

Arg0.invoke();

如果不成功,就自己返回个语句

Return “不可以咩~

}

 

2

Ok,拦截器写完了 让我们红尘作伴开始配置

配置的套路是这样的 Struts.xml

<interceptors>

<interceptor name=logincheck class=芭啦芭啦>(好像不用写方法哦~

</interceptors>

(不行我得写会这单词 interceptors interceptor interceptor interceptor interceptor interceptor interceptor  interceptors

好了接着写虽然明天估计又忘了。。。

 

然后开始action了啊

<action name class method>(这都老套路)

<interceptor-ref name=logincheck></interceptor-ref>

<result></result>

</action>

 

Ok~O(_)O~好像差不多了 去试一下~

 

忘怎么取Session了 哭T,T 又不争气的回来了

1

HttpServletRequest request = ServletActionContext.getRequest();

HttpSession session = request.getSession();

2

HttpSession session = ServletActionContext.getRequest();

一顿找jar包的错最后发现是ServletActionContext!!不是ServletContext

够了~

 

好了同学们让我们走一个~

失败了宝宝有点蒙。。。

从头说一遍

 

运用Session在登录上没有任何意义啊~

因为 打开一个新界面:登录不进去(因为Session的缘故)

老界面:完全没意义

(而且直接登录success.jsp拦截器我还不知道怎么起作用)

 

Ok~完美差不多了也不写了,

晚上回来把那个作业写了,再把什么国际配置弄明白就行了,如果不偷懒的话

 

还有写界面挖出来的坑,

两个select语句还是不熟悉啊

第一个是查单个

Return qr.query(select * from user where name=? , new BeanHeadler<User>(User.class),user.getName());

第二个是查一个集合

Return qr.query(select * from user where name=?,new Object[]{user.getName()},new BeanListHeadler<User>(User.class);

 

然后是C3p0链接数据库我也记不住啊/(o)/~~

 

先链接C3P0的配置文件

然后写个C3P0Utils

 

 

Import javax.sql.DataSource;
Publi class C3P0Utils
{
Private static DataSource ds = new ComboPooledDataSource();
Public static DataSource getDataSource()
{
Return ds;
}
}

 

 

然后写daoimpl

QueryRunner qr = new QueryRunner(C3P0Utils.getDataSource());

 

下一个环节:国际化概念(了解)

步骤

1

创建一个消息资源包

比如:message_zh_CN.properties message_zh_HK.properties

里面大概是这个样的

key=\u5168\u5C40\u7684\u5C5E\u6027

jsp.login.username=\u7528\u6237\u540D

jsp.login.password=\u5BC6\u7801

jsp.login.denglu=\u767B\u9646

自己理解吧~

 

<!--[if !supportLists]-->2.<!--[endif]-->读取资源包中的内容

(在jsp页面上,head上面就行)

<%
Locale locale = request.getLocale();
ResourceBundle bundle = ResourceBundle.getBundle(“com.itherima.resources.message”,locale);
%>
<body>
<%=bundle.getString(“jsp.login.username”)%><input type=”text” name=”name”>

 

 

 

       

这个图有一个地方挺好玩的,就是拦截器那,在第一次拦截时候,已经运行了jsp页面了,只不过没显示东西。再次经过拦截器才把html页面运行出来。

 

写歌的人就该有伤悲,写首小调名字叫后悔。哪有唐人不懂 得陶醉,再上一层胭脂也不美。一声戛然而止的鞭炮,你说不要

跟不上了不写了,你说孤独是诗人应有的体会,

分享到:
评论

相关推荐

    Struts2 国际化字符串 拦截器

    文件的国际化字符串中使用OGNL,格式为${表达式},例如: validation.required=${getText(fileName)} is required 2. 使用java.text.MessageFormat中的字符串格式,格式为{ 参数序号(从0开始), 格式类形(number |...

    struts拦截器介绍

    11. **I18nInterceptor**:国际化拦截器,记录用户选择的区域设置,以实现多语言支持。 12. **LoggerInterceptor**:日志拦截器,输出Action的名字以及相关信息,帮助开发者进行日志记录。 13. **Message ...

    Struts2内置拦截器简介

    12. **I18N (国际化)** - **功能**:支持多语言应用,可以基于用户的语言设置动态加载相应的资源文件。 13. **Logger (日志记录)** - **说明**:为Action提供日志记录功能,可以记录Action的执行情况以及重要...

    struts2语言国际化

    1. 配置`struts.xml`:在`struts.xml`文件中,需要添加一个拦截器来处理国际化。在`&lt;struts&gt;`标签内添加以下内容: ```xml &lt;!-- Add the i18n interceptor to the default stack --&gt; ... ``` 这将使`...

    Struts2 校验器和国际化结合使用

    此外,还可以使用拦截器(Interceptor)进行更复杂的业务逻辑验证。 总的来说,Struts2的校验器和国际化功能为开发人员提供了强大的工具,使得他们可以轻松地管理用户输入的验证和多语言支持,从而提升应用的用户...

    struts2实现国际化

    4. **国际化拦截器**:Struts2提供了一个名为`i18n`的拦截器,它可以自动处理资源文件的加载和选择。在Action配置中添加这个拦截器,确保正确解析用户选择的语言: ```xml &lt;!-- 其他拦截器 --&gt; ``` 5. ...

    基于struts2和jdbc的登录注册表单,已实现国际化(数据库为mysql)

    - **Interceptor拦截器**:在Action执行前后进行预处理和后处理,如登录检查、日志记录等。 - **Result结果类型**:定义了Action执行后的跳转逻辑,如重定向到某个页面。 - **ValueStack**:存储Action上下文的...

    Struts2 最简单的国际化Demo

    国际化(i18n)是任何大型应用程序不可或缺的一部分,它允许软件根据用户的地区设置显示相应的语言内容。在Struts2中实现国际化,可以为不同国家和地区的用户提供更加友好的体验。 在"Struts2 最简单的国际化Demo...

    play框架手册

    但是我们可以在一个完全不同的类里定义一些拦截器,然后在任何控制器里使用@With注释来链接他们。 - 42 - Session和Flash作用域 - 42 - 04.模板引擎 - 43 - 模板语法 - 43 - Expressions: ${…} - 44 - Template ...

    Struts2 Design and Programming: A Tutorial.pdf

    - 拦截器是Struts2的重要特性,它可以插入到Action调用的链路中,执行预处理和后处理任务,如登录验证、日志记录、性能统计等。 - 默认的拦截器栈包括了异常处理、参数校验和类型转换等功能。 3. **Struts2配置**...

    Struts 2 Design and Programming A Tutorial

    书中对Struts 2的各项特性进行了详细解析,包括但不限于国际化、验证框架、类型转换、事件监听等,帮助开发者根据项目需求选择最适合的功能。 ### 附加知识点 尽管本书主要关注Struts 2,但提及的“java”、“ajax...

    struts2例子大全

    常见的拦截器有Validation拦截器(表单验证)、I18n拦截器(国际化)和Execute-and-Redirect拦截器(防止重复提交)。 4. **结果类型(Result)**:Struts2支持多种结果类型,如dispatcher(默认,转发到一个JSP...

    struts1.3 and struts2 API chm格式

    3. **拦截器**:理解Struts2中拦截器的工作原理,以及如何自定义拦截器以实现特定功能。 4. **表单验证**:学习如何使用Struts1的ActionForm和Struts2的Validator框架进行数据校验。 5. **结果类型**:掌握如何定义...

    struts1-and-struts2.zip_between

    - **Struts2**:继承了Struts1的优点,同时支持在Action类和拦截器中直接使用资源文件,更方便地实现国际化。 5. **异常处理** - **Struts1**:异常处理不够灵活,需要在struts-config.xml中配置全局异常处理。 ...

    struts2入门实例

    3. **拦截器(Interceptors)**:Struts2的一个强大特性是它的拦截器,这些拦截器可以实现如日志记录、权限检查、性能监控等功能。在执行Action之前和之后,拦截器会被调用。 接下来,我们关注资源文件国际化: 4....

    Beginning JSF2 APIs and JBoss Seam

    - **拦截器**:掌握如何使用拦截器对请求进行预处理或后处理,增强应用的安全性和功能性。 - **集成测试**:学会编写集成测试来验证Seam应用的功能和性能。 #### 四、综合运用 **1. 结合JSF2与JBoss Seam** - **...

    webwork-2.2.2和xwork1.1.3的jar包and源代码

    WebWork是一个轻量级的MVC框架,它通过使用动作(Action)和结果(Result)的概念来处理用户请求,并且提供了强大的数据绑定、类型转换、异常处理和国际化支持。WebWork 2.2.2是该框架的一个稳定版本,它引入了许多...

    struts2.0源码 简单实用

    7. **国际化(Internationalization, i18n)**:Struts2支持多语言环境,可以轻松实现应用的国际化。 8. **主题与皮肤(Themes and Skins)**:提供了一种改变应用外观的方式,通过更改主题和皮肤,可以快速改变UI...

Global site tag (gtag.js) - Google Analytics