关闭

Jsp+Servlet+JavaBean原生态开发问题集锦

748人阅读 评论(2) 收藏 举报
分类:

问题1:


从数据库查到了年级,教材版本,科目。如何判断operation选了哪个?

<select name="grade">
 <%
       String sqlPlus3 = “从表中查询年级的字段”;
       Vector<String[]> vv3 = DB.getMessage(sqlPlus3);//获取所有字段
       for(int i=0;i<vv3.size();i++){
       String[] str = vv3.get(i);//得到sql查询的字段
%>


<option value="<%=str[0]%>"><%=str[0] %></option>

</select>

思路:把选中的字段,放到option的value中,通过select标签的name访问所选的字段名称。

然后在ActionServlet.java里面:

request.getParameter("grade")获得。


问题2:

过滤器:没找到类的异常


原因是:该项目工程的web.xml的配置中 <filter-class>,找不到对应路径的类。原来,LogFilter.java的包为com.zh.servlet,而web.xml没有填写完整路径,补之即可。

<filter>
   <filter-name>LogFilter</filter-name>
   <filter-class>com.zh.servlet.LogFilter</filter-class>      //补充.java的包名
   <init-param>
 <param-name>test-param</param-name>
 <param-value>Initialization Paramter</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>LogFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>


问题3:

对于Myeclipse中引入jQuery后有的文件出现multiple markers at this line - missing semicolon错误的解决

原因是myeclise9之后的版本的验证规则与jQuery的冲突,但实际上并不影响开发者正常使用,所以只要取消验证即可。

步骤为:右键->myeclise->  Exclude From Validation


问题4:

【项目加上过滤器后,依然出现乱码】

过滤器代码:

public class EncodingFilter implements Filter {

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void doFilter(ServletRequest arg0, ServletResponse arg1,
			FilterChain arg2) throws IOException, ServletException {
		String encoding = filterConfig.getServletContext().getInitParameter("encoding");
		System.out.println("EncodingFilter:"+encoding);///////////
		arg0.setCharacterEncoding(encoding);
		arg2.doFilter(arg0, arg1);
	}

	@Override
	public void init(FilterConfig arg0) throws ServletException {
		this.filterConfig = arg0;//在web.xml里面读
		
	}

	private FilterConfig filterConfig = null;

}<strong>
</strong>
web.xml
<context-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
  </context-param>
  <filter>
    <filter-name>EncodingFilter</filter-name>
    <filter-class>com.zh.filter.EncodingFilter</filter-class>
  </filter>
  
  <filter-mapping>
    <filter-name>EncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
代码都没问题,原因是因为缓存:之前的乱码覆盖了现在的页面。

/*********************************************************大三下*************************************************************************/

问题5:


今天整合界面出现了问题,main部分不能正常显示,sidebar和navicat可以正常显示。
查看F12发现navicat的部分把sidebar和main部分包住了,才导致main部分不能正常显示。
原因探究:少了一个nav 标签的 结束标签。


问题6:

Error instantiating servlet class cn.edu.fjnu.analysis.servlet.question_admin.DifficultyQuestionReviewServlet

有位网友的答复为:
我遇到这样的错,是因为,没有在工程的WEB-INF目录中,没有生成classes,会报这样的错误。解决方法:project->properties->java build path->source->src,将Default output folder设置为[项目名]/WebRoot/WEB-INF/classes,点击OK。
原因探究:因为yc同步svn时把.classpath(保存的是项目所用的外部引用包的路径)也传上去了,下载新版本代码后不能成功运行,是因为在他的项目引了几个支持json包,而我本地没有对于的jar包。删除那几个错误的引用即可。

知识补充:

.classpath保存的是项目所用的外部引用包的路径。
.mymetadata 保存的是工程属性文件
.project 是工程构建配置文件
.metadata文件夹的作用 Eclipse内所有改动都放在这个文件夹
.setting文件夹的作用:
把.js文件的编码方式由改成默认的ISO-8859-1改成GBK时,这个文件会有记录。
如果把这个文件删了,在eclipse中查看js文件的中文字符就是乱码,但发布的时候还是能正常显示中文的。
结论:这个文件是eclipse查看js文件的时候用的,记录了用什么编码方式查看。与发布无关。.settings\文件夹不会被打到.war包里。


问题7:

Caused by: Unable to load bean: type: class:com.opensymphony.xwork2.ObjectFactory - bean - jar:file:/F:/gszh/gszh/apache-tomcat-7.0.57/webapps/shop/WEB-INF/lib/struts2-core-2.3.4.1.jar!/struts-default.xml:29:72
一直报错,原来是一个缓存的jar包没引,却提示Struts.xml有问题,也是无语了。

原因探究:旧项目在webapps和work中的残留所致,删除它即可。


问题8:

tab1能加载echarts饼图,tab2则不行;或tab2能加载echarts饼图,tab1则不行(不能同时显示)。


查看F12发现,出现异步错误。

原因探究:$getJSON默认是不支持异步加载的。($ajax有支持异步的属性,它很灵活)

可以加个时间setTimeOut

还是不能正常显示,但发现已经成功得到JSON数据

原来是divclass少了active

原因探究:bootstrap里面,active能加载效果,如果少了它,就加载不出来。


问题9:


yc调饼图,服务器能得到数据,返回前台却为空。

原因探究:<b>${ErrorRate}</b>EL表达式值显示不了。调试后发现,在查看题目详情的时候,页面还发送了3个ajax请求(用$getJSON发送),所以用request.setAttribute("errorRate",errorRate);显示上图的100.0%是会丢失数据的,以至于在用tab进行Echarts图的转换的时候,request已经死亡。所以得把其换为request.getSession().setAttribute("errorRate", errorRate);  改后即可访问数据。

然而用浏览器自带的后退键,选择其他题目,再进入题目详情后,却显示了上题存储的数据(即访问的session不是最新的,而总是上一次的)

原来是EL表达式在加载页面的时候就把数据给读出来了,而我的request.getSession().setAttribute("errorRate", errorRate);是放在ajax请求的响应后端代码块中的,要发送ajax并响应后才能把值回显,导致新值还没覆盖,加载页面时就把旧数据给读出来了。

此页面涉及到四个请求:questiondetails、pieChart1、pieChart2、pieChart3,解决办法是把EL读取的字段,放在questiondetails请求中,这样就不会出现请求速度上面的不一致,而导致数据有先后。


问题10:

拿到yd的存储过程后,从数据库中(在服务器)读出来显示的是乱码

原因探究:远程服务器mysql默认并不是UTF-8,需要修改了数据库server的默认编码为UTF-8。


问题11:

table标签的包的数据显示不出来。

原因探究:table标签里有个属性data-url="tables/data1.json,去除即可。


问题12:

远程svn仓库有两个,下载到桌面上的时候,提示已下载,然而明明已经删除掉了。

原因探究:从svn仓库检出项目到本地,除了项目本身,还会将一个.svn的隐藏文件同步到本地端,用以记录版本控制。可开启Windows的隐藏模式,显示查看生成的.svn在各文件夹的分布情况。


问题13:

人工审核中的显示最近审核记录,不能按最新时间排序。

旧:


新:


原因探究:存储过程查询出来的审核时间是按字符串顺序排序而非按日期。

修改了p_query_recently_reviewed_scope
-- order by 'lastReviewDate' -- 这里是用字符串顺序排的,要把字符串改成日期类型
order by date_format(lastReviewDate,'%y-%m-%d-%H-%i-%s') DESC


BEGIN
-- 存储过程:查询某个审核者最近审核的单元
-- 0403
SELECT f_scope_path_string_by_back_tracking(unit.pk_scope_id) as 'scopePathString',
	unit.pk_scope_id as 'unitId',unit.`name` as 'unitName',
	f_last_review_date_of_a_unit(unit.pk_scope_id,in_reviewer_member_id) as 'lastReviewDate'-- 输入:审核者ID
from t_question,t_scope `lesson`,t_scope `unit`
where t_question.scope_pk_scope_id=lesson.pk_scope_id-- join
and lesson.fk_parent_id=unit.pk_scope_id-- join
and t_question.fk_reviewerMemberId=in_reviewer_member_id-- 输入:审核者ID
GROUP BY unit.pk_scope_id
order by date_format(lastReviewDate,'%y-%m-%d-%H-%i-%s') DESC
limit 0,5;-- 最多显示5条
-- 
END



问题14:

①错误率返回前台可能会出现小数点位数>2的情况;

                DecimalFormat df = new DecimalFormat("#.##");
		double converNum = Double
				.parseDouble(questionDetailList.getErrorRate());
		converNum *= 100;
		String str = df.format(converNum);// 转换成对应的格式:XX.XX%
		
②数据库datetime类型存入不成功。

                Date date = new Date();
		Timestamp reviewDate = new Timestamp(date.getTime());








0
0
查看评论

对原生态jdbc(单独使用jdbc开发)问题总结

在写这个程序之前需要创建一个java工程,这是前提 接着加入mysql的驱动包,我用的数据库是5.1版本的,所以驱动包也是5.1版本的,jdk是1.7 创建数据库位mybatis,表名位user package com.mybatis.jdbc; import java.sql.Connect...
  • hsl_1990_08_15
  • hsl_1990_08_15
  • 2016-05-07 13:50
  • 1237

ThinkPHP框架常见问题集锦(会不断更新)

1、在linux服务器部署时,提示找不到模板 ①模板文件确实存在 ②权限也没有问题当时部署时,TaskController里在展示view模板时$this->display('task/process');而在View里存放的在Task(大写)目录下的pro...
  • fationyyk
  • fationyyk
  • 2016-03-17 16:06
  • 756

HTML5 APP开发与原生态APP比较有什么好处?

对于开发app软件的企业和团队来说,html5开发app是一个比较常见的话题,但是对于那些不是很懂得html5技术的小伙伴来说,开发app应用为什么能够采用html5语言,使用html5技术做手机端应用有什么效果这两个问题,他们是需要得到明确的解释的。 什么是html5技术 ...
  • ccit0519
  • ccit0519
  • 2017-05-17 14:20
  • 747

JSP总结(JSP+Servlet+JavaBean)--动态网站开发编程语言

JSP总结(JSP+Servlet+JavaBean)--动态网站开发编程语言     引言:前段时间写了Servlet的基本用法,但是如果想要真正的开发一个动态网站的话,那么Servlet远远还不够,即使真的可以开发,那也是非常非常吃力的,这个时候,jsp无非是最好的帮衬. &...
  • qq_31308883
  • qq_31308883
  • 2016-02-04 05:30
  • 996

Android 开发常见问题汇总

Dex分包,解决64K限制的问题:参考链接:https://developer.android.com/studio/build/multidex.html#mdex-gradle问题1:Android项目中的命名规则举例如下: Activity: TemplateActiv...
  • yingx0202
  • yingx0202
  • 2016-04-10 21:16
  • 559

面试题汇总-

一、HTML和CSS 1、你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? IE: trident内核 Firefox:gecko内核 Safari:webkit内核 Opera:以前是presto内核,Opera现已改用Google Chrome的Blink内核 C...
  • gyq04551
  • gyq04551
  • 2017-02-16 12:24
  • 1588

【蓝牙】蓝牙技术问题集锦

1.低功耗蓝牙和经典蓝牙不同? 设计目标和市场领域不同。 经典蓝牙:经典蓝牙的设计目的在于统一各地的计算和通信设备。让手机和电脑连接,但是经典蓝牙最广泛的应用还是音频的传输,比如让手机的音频传输到耳机。发展方向朝着宽带的方向发展。 低功耗蓝牙:低功耗蓝牙选择了完全不同的方向,并非增加可达的数据...
  • u014647208
  • u014647208
  • 2017-01-24 17:58
  • 273

传统JSP,JSP+JavaBean,JSP+Servlet+JavaBean三种开发javaweb的方法比较

1.传统的Javaweb中,JSP既负责数据展示,又负责业务逻辑处理和流程控制。简化过程如下图:                 &...
  • enniexiaorui
  • enniexiaorui
  • 2017-04-13 13:41
  • 576

OpenCV学习笔记(17)双目测距与三维重建的OpenCV实现问题集锦(二)双目定标与双目校正

原文地址:http://blog.csdn.net/chenyusiyuan/article/details/5963256 三、双目定标和双目校正 双目摄像头定标不仅要得出每个摄像头的内部参数,还需要通过标定来测量两个摄像头之间的相对位置(即右摄像头相对于左摄像头的三维平移 t 和...
  • liuzunyan
  • liuzunyan
  • 2015-06-01 06:17
  • 1593

Windbg 问题集锦记录

问题1: 问:  0  Id: 15f4.e60 Suspend: 1 Teb: 7ffdf000 Unfrozen  # ChildEBP RetAddr  Args to Child     ...
  • swanabin
  • swanabin
  • 2013-11-19 16:18
  • 1055
    个人资料
    • 访问:58329次
    • 积分:1409
    • 等级:
    • 排名:千里之外
    • 原创:84篇
    • 转载:3篇
    • 译文:0篇
    • 评论:26条
    友情链接