博客开通第79天

 

1、使用struts2+spring+ibats框架学到的东西,jsp页面里的东西

根据名称或其他条件查询的话<input>里的那么属性要和dao里面的相应的值相同:

例如:

jsp里的

<td>
标题名称:<input type="text" name="con_inform_title" />
</td>

<td>
时间:<input type="text" name="con_inform_time" />
</td>

action里的

StringBuffer where = new StringBuffer(" WHERE 1 = 1 ");
List queryParams = new ArrayList();

String con_inform_title = request.getParameter("con_inform_title");
con_inform_title = UtilValidate.isEmpty(con_inform_title) ? null
: ("%" + con_inform_title + "%");
if (con_inform_title != null) {
where.append("AND TITLE LIKE ? ");
queryParams.add(con_inform_title);
}
String con_inform_time = request.getParameter("con_inform_time");
con_inform_time = UtilValidate.isEmpty(con_inform_time) ? null : ("%"
+ con_inform_time + "%");

2、

编辑页面时:

<td class="top">
标题名称:
</td>
<td>
<input name="bminform.TITLE" type="text" maxlength="50"
class="required" value="${bminform.TITLE}" />
</td>

3、

向数据库中插入时间,选择时间时:

<td class="top">
时间:
</td>
<td>
<input name="bminform.INFOR_TIME" type="text" class="date required" yearstart="-80" yearend="80" value="${bminfrom.INFOR_TIME }" readonly="readonly" />
</td>

选择类型时:

 

<td>
通知类型:
</td>
<td>
<select name="bminform.INFOR_TYPE" class="required combox">
<option value="" ${(bminform.INFOR_TYPE==
""||bminform.INFOR_TYPE==null) ? "selected='selected'" : ""}>
请选择
</option>
<option value="公司通知" ${(bminform.INFOR_TYPE==
"公司通知"||bminform.INFOR_TYPE==null) ? "selected='selected'" : ""}>
公司通知
</option>
<option value="系统通知" ${(bminform.INFOR_TYPE==
"系统通知"||bminform.INFOR_TYPE==null) ? "selected='selected'" : ""}>
系统通知
</option>
<option value="其他通知" ${(bminform.INFOR_TYPE==
"其他通知"||bminform.INFOR_TYPE==null) ? "selected='selected'" : ""}>
其他通知
</option>
</select>
</td>

 

4、出现

 

原因是:放入了一个可以选择的日期框。在实体类里设置的时间类型是date型。

严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: /admin/bmsystem/bminformForm.jsp(63,12) Attribute yearstart invalid for tag formatDate according to TLD
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:236)
at org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1198)
at org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819)
at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1512)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343)
at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2393)
at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2399)
at org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2343)
at org.apache.jasper.compiler.Validator.validate(Validator.java:1737)
at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:165)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:294)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:281)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:157)
at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:373)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:277)
at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:263)
at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:270)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)
at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:498)
at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:434)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.struts2.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.txkj.manager.filter.UrlAclFilter.doFilter(UrlAclFilter.java:63)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.txkj.manager.filter.LoginFilter.doFilter(LoginFilter.java:119)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.txkj.manager.filter.DisableUrlSessionFilter.doFilter(DisableUrlSessionFilter.java:75)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)

修改的是:

 

出现错误:

ERROR com.txkj.business.inform.dao.BMInformDao - org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0];
--- The error occurred in config/ibatis/BMInform.xml.
--- The error occurred while applying a result map.
--- Check the getBMInform-AutoResultMap.
--- Check the result mapping for the 'INFOR_TIME' property.
--- Cause: java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.NumberFormatException: For input string: " 02"; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:

The error occurred in config/ibatis/BMInform.xml.
--- The error occurred while applying a result map.
--- Check the getBMInform-AutoResultMap.
--- Check the result mapping for the 'INFOR_TIME' property.
--- Cause: java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.NumberFormatException: For input string: " 02"
2013-06-07 17:01:35,290 [http-8080-1] ERROR com.txkj.business.inform.action.BMInformAction - getBMInform error:java.lang.Exception: org.springframework.jdbc.UncategorizedSQLException: SqlMapClient operation; uncategorized SQLException for SQL []; SQL state [null]; error code [0];
--- The error occurred in config/ibatis/BMInform.xml.
--- The error occurred while applying a result map.
--- Check the getBMInform-AutoResultMap.
--- Check the result mapping for the 'INFOR_TIME' property.
--- Cause: java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.NumberFormatException: For input string: " 02"; nested exception is com.ibatis.common.jdbc.exception.NestedSQLException:
--- The error occurred in config/ibatis/BMInform.xml.
--- The error occurred while applying a result map.
--- Check the getBMInform-AutoResultMap.
--- Check the result mapping for the 'INFOR_TIME' property.
--- Cause: java.sql.SQLException: An SQLException was provoked by the following failure: java.lang.NumberFormatException: For input string: " 02"

目前的解决方法是:把ibats里的BMInform.xml里的select里的TO_CHAR(INFOR_TIME,'yyyy-mm-dd hh:mm:ss')改成 to_date(TO_CHAR(INFOR_TIME,'YYYY-MM-DD'),'YYYY-MM-DD' )或者INFOR_TIME,因为我定义的INFOR_TIME是date类型。

 要学会用<s:debug></s:debug>

 

 

 

转载于:https://www.cnblogs.com/licc09/archive/2013/06/08/3124344.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
requests是一个常用的Python第三方库,用于发送HTTP请求。它提供了简洁而直观的API,使得发送HTTP请求变得非常方便。以下是requests库的一些主要特点和用法: 1. 发送GET请求: 使用requests库发送GET请求非常简单,只需调用`requests.get(url)`方法即可。例如,发送一个GET请求获取百度首页的内容可以这样写: ```python import requests response = requests.get('https://www.baidu.com') print(response.text) ``` 2. 发送POST请求: 如果需要发送POST请求,可以使用`requests.post(url, data)`方法。其中,`data`参数可以是一个字典或字符串,用于传递POST请求的数据。例如,发送一个POST请求给服务器提交表单数据可以这样写: ```python import requests data = {'username': 'admin', 'password': '123456'} response = requests.post('http://example.com/login', data=data) print(response.text) ``` 3. 设置请求头: 可以通过`headers`参数设置请求头信息,例如设置User-Agent、Referer等。示例如下: ```python import requests headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} response = requests.get('https://www.baidu.com', headers=headers) print(response.text) ``` 4. 处理响应: 发送请求后,可以通过`response`对象获取响应的内容、状态码等信息。例如,获取响应的状态码可以使用`response.status_code`,获取响应的内容可以使用`response.text`。示例如下: ```python import requests response = requests.get('https://www.baidu.com') print(response.status_code) print(response.text) ``` 以上是requests库的一些基本用法,你可以根据具体需求进一步了解和使用。如果还有其他问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值