论文部分内容阅读
【摘要】本文介绍了在用JSP实现一个学生校内物品交易网站的过程中所采用的几种实用技巧以及相关的体会。
【关键词】JSP;MYSQL;网站建设
【中图分类号】TP393.09【文献标识码】B【文章编号】1005-250X(2007)10-0059-02
1引言
前一段时间笔者建了一个学生校内物品交易网站。在网站的实现上,运用关系数据库标准语言SQL对数据库进行相关操作,安装JDK配置环境变量,用tomcat作为服务器,利用JAVA/JSP语言以及ODBC桥连接数据库。采用MYSQL作为数据库,因为它是免费的,同时它跨平台对硬件的要求也不是很高。在建设网站时,我们曾经遇到了一些问题,在解决问题的过程中,有了如下的心得体会。
2网站建设中几种实用技巧
2.1如何在MYSQL中使用中文:我们原先安装的MYSQL数据库版本是MYSQL-5.0.27,可是在数据表中插入数据时,中文总是插不进去,不支持中文。后来我们改装MYSQL-4.1.11,中文是可以插进去了,但是JSP代码调用数据库中的数据在网页上显示时,出了问题,凡是中文的全是乱码。查找有关资料后,发现有介绍说启动MYSQL服务器的时候,指定系统变量character_set_server=GB2312即可。我们按要求对系统变量进行了指定,并查了JAVA-API文档使title = new String(title.getBytes(“ISO-8859-1”),“GB2312”),终于可以在MYSQL中使用中文了。
2.2如何让管理员安全登录:在首页管理员登录一栏里,输入正确的用户名和密码后可以进入管理员界面main.jsp,但如果直接输入地址http://localhost:8080/bysj/admin/main.jsp,也可以进入管理员界面。这就带来一个问题,非管理员如果知道地址则不用经过用户名和密码的审核就可以充当管理员的角色了。我们绝不能容许发生这样的事情,为此,在首页页面里增添了如下代码:
if(rrs.getString(“username”).equals(username)&&rrs.getString(“password”).equals(password)){
session.setAttribute(“ok”,“flag”);
response.sendRedirect(“admin/main.jsp”);
}
这个if语句的意思是,如果是通过用户名和密码审核的话,则“ok”和“flag”相等,这样我们在管理员每个页面中都嵌入代码:
String flag =(String)session.getAttribute(“ok”);
if(flag!=“ok”&&flag==null){
response.sendRedirect(“../index.jsp”);
}
这样的话即使有人知道地址http://localhost:8080/bysj/admin/main.jsp,如不经过审核也是没有办法进入的。
2.3如何使用id传值:在发布信息一栏里,我们把标题infor表和内容contents表分开,这样做的好处是在页面显示时会好看一些,不至于大量的数据堆在一起,但是带来的问题是,如何把标题和内容连接在一起呢?其实如果id的值是一个结果的话,可以调用JSP中的setAttribute方法就可以解决了,但是id的值是随数据的逐渐增加而改变的,这时使用setAttribute方法就是一个很繁琐的问题,我们在html语言中嵌入代码<a href=“content.jsp?id=<%=rs.getString(“id”)%>就解决了这个问题。
2.4如何使用html语言中的隐藏文本域hidden:在管理员修改信息的页面里,一般会显示修改的信息,便于管理员修改。我们是用html语言<input type=“hidden” value=“<%=id%>” name=“id” />,然后调用JSP代码String id = request.getParameter(“id”)来实现。
2.5如何显示当前日期:显示当前日期的代码如下:
<%
TimeZone tz=TimeZone. getTimeZone
(“Asia/Shanghai”);
Calendar c = Calendar.getInstance(tz, Locale.CHINA);
String myString= c.get(Calendar.YEAR)+“年”+String.valueOf(c.get(Calendar.MONTH)+1)+“月”+c.get(Calendar.DAY_OF_MONTH)+“日”;
%>
这里字符串变量myString在html语言中嵌入“今天是<%=myString%>”就可以显示当前日期了。
3结束语
在网站建设中要用到许多数据库知识和网页设计技巧,我们这里介绍的是很肤浅的几种,希望一方面能起到一个抛砖引玉的作用,另一方面能对初学网站建设的人员有所帮助。
参考文献
[1]李琳.虚拟物品交易 一盘大生意[J].理财杂志.2006,(3):47
[2]田金平.学生信息管理系统的设计与实现[J].大众科学,2007,(4):36~37
[3]张洪伟.Tomcat Web开发及整合应用[M].北京:清华大学出版社,2006
[4]吴建、张旭东.JSP网络开发入门与实践[M].北京:人民邮电出版社,2006
收稿日期:2007-09-13
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文”
【关键词】JSP;MYSQL;网站建设
【中图分类号】TP393.09【文献标识码】B【文章编号】1005-250X(2007)10-0059-02
1引言
前一段时间笔者建了一个学生校内物品交易网站。在网站的实现上,运用关系数据库标准语言SQL对数据库进行相关操作,安装JDK配置环境变量,用tomcat作为服务器,利用JAVA/JSP语言以及ODBC桥连接数据库。采用MYSQL作为数据库,因为它是免费的,同时它跨平台对硬件的要求也不是很高。在建设网站时,我们曾经遇到了一些问题,在解决问题的过程中,有了如下的心得体会。
2网站建设中几种实用技巧
2.1如何在MYSQL中使用中文:我们原先安装的MYSQL数据库版本是MYSQL-5.0.27,可是在数据表中插入数据时,中文总是插不进去,不支持中文。后来我们改装MYSQL-4.1.11,中文是可以插进去了,但是JSP代码调用数据库中的数据在网页上显示时,出了问题,凡是中文的全是乱码。查找有关资料后,发现有介绍说启动MYSQL服务器的时候,指定系统变量character_set_server=GB2312即可。我们按要求对系统变量进行了指定,并查了JAVA-API文档使title = new String(title.getBytes(“ISO-8859-1”),“GB2312”),终于可以在MYSQL中使用中文了。
2.2如何让管理员安全登录:在首页管理员登录一栏里,输入正确的用户名和密码后可以进入管理员界面main.jsp,但如果直接输入地址http://localhost:8080/bysj/admin/main.jsp,也可以进入管理员界面。这就带来一个问题,非管理员如果知道地址则不用经过用户名和密码的审核就可以充当管理员的角色了。我们绝不能容许发生这样的事情,为此,在首页页面里增添了如下代码:
if(rrs.getString(“username”).equals(username)&&rrs.getString(“password”).equals(password)){
session.setAttribute(“ok”,“flag”);
response.sendRedirect(“admin/main.jsp”);
}
这个if语句的意思是,如果是通过用户名和密码审核的话,则“ok”和“flag”相等,这样我们在管理员每个页面中都嵌入代码:
String flag =(String)session.getAttribute(“ok”);
if(flag!=“ok”&&flag==null){
response.sendRedirect(“../index.jsp”);
}
这样的话即使有人知道地址http://localhost:8080/bysj/admin/main.jsp,如不经过审核也是没有办法进入的。
2.3如何使用id传值:在发布信息一栏里,我们把标题infor表和内容contents表分开,这样做的好处是在页面显示时会好看一些,不至于大量的数据堆在一起,但是带来的问题是,如何把标题和内容连接在一起呢?其实如果id的值是一个结果的话,可以调用JSP中的setAttribute方法就可以解决了,但是id的值是随数据的逐渐增加而改变的,这时使用setAttribute方法就是一个很繁琐的问题,我们在html语言中嵌入代码<a href=“content.jsp?id=<%=rs.getString(“id”)%>就解决了这个问题。
2.4如何使用html语言中的隐藏文本域hidden:在管理员修改信息的页面里,一般会显示修改的信息,便于管理员修改。我们是用html语言<input type=“hidden” value=“<%=id%>” name=“id” />,然后调用JSP代码String id = request.getParameter(“id”)来实现。
2.5如何显示当前日期:显示当前日期的代码如下:
<%
TimeZone tz=TimeZone. getTimeZone
(“Asia/Shanghai”);
Calendar c = Calendar.getInstance(tz, Locale.CHINA);
String myString= c.get(Calendar.YEAR)+“年”+String.valueOf(c.get(Calendar.MONTH)+1)+“月”+c.get(Calendar.DAY_OF_MONTH)+“日”;
%>
这里字符串变量myString在html语言中嵌入“今天是<%=myString%>”就可以显示当前日期了。
3结束语
在网站建设中要用到许多数据库知识和网页设计技巧,我们这里介绍的是很肤浅的几种,希望一方面能起到一个抛砖引玉的作用,另一方面能对初学网站建设的人员有所帮助。
参考文献
[1]李琳.虚拟物品交易 一盘大生意[J].理财杂志.2006,(3):47
[2]田金平.学生信息管理系统的设计与实现[J].大众科学,2007,(4):36~37
[3]张洪伟.Tomcat Web开发及整合应用[M].北京:清华大学出版社,2006
[4]吴建、张旭东.JSP网络开发入门与实践[M].北京:人民邮电出版社,2006
收稿日期:2007-09-13
“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文”