jsp页面使用java代码以前,我不喜欢在jsp页面中,直接使用java代码块,镶嵌java代码,但是工作之后,使用了这种
jsp页面使用java代码
以前,我不喜欢在jsp页面中,直接使用java代码块,镶嵌java代码,但是工作之后,使用了这种情况之后,我改变了初衷,其实它也有他的方便之处呀!
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><%@ pageimport="java.util.*,org.springframework.context.ApplicationContext"%><%@ pageimport="org.springframework.web.context.support.WebApplicationContextUtils"%><%@page import="com.hdsm.xxcj.tnbhzsfb.*;"%><%@ include file="../../public/jsp_top.jsp"%><%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";TnbsfbMain main = (TnbsfbMain) ctx.getBean("tnbsfbmain");String str = request.getParameter("id").toString();Iterator it = main.find_onesfb(str);%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>编辑随访记录</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css"></head><body><form name="form1" action="" target="middleFrame" method="post"><%while (it.hasNext()) {Map map = (Map) it.next();%><table border="1"><tr style="border: thin"><td colspan="5" align="center"><h3><strong>修改糖尿病患者随访记录</strong></h3><input type="hidden" name="id" id="id" value="<%=str%>"><input type="hidden" name="CV5101_27_ALL" id="CV5101_27_ALL"value=""></td></tr><tr><tr><td >体质指数:</td><td><input type="text" name="PWNUM" id="PWNUM" : map.get("PWNUM").toString()%>"> </td><td >足背动脉搏动:</td><td><input type="radio" name="FOOTWAVE" id="FOOTWAVE" value="1"<% if ("1".equals(map.get("FOOTWAVE"))){%> checked="checked" <%}%>>未触及<input type="radio" name="FOOTWAVE" id="FOOTWAVE" <% if ("2".equals(map.get("FOOTWAVE"))){%> checked="checked" <%}%>>触及</td></tr><tr><td >医生签名:</td><td colspan="4"><input type="text" name="DECTORNAME" id="DECTORNAME" value="<%=map.get("DECTORNAME")==null?"":map.get("DECTORNAME").toString()%>"></td></tr><tr><td >下次随访日期:</td><td colspan="4"><input type="text" name="NEXT_V_TIME_YEAR" size="5" onBlur="checkYear('NEXT_V_TIME_YEAR');"value="<%=map.get("NEXT_V_TIME")==null?"":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[0]%>">年<input type="text" name="NEXT_V_TIME_MONTH" size="3" onBlur="checkMonth('NEXT_V_TIME_MONTH');"value="<%=map.get("NEXT_V_TIME")==null? "":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[1]%>">月<input type="text" name="NEXT_V_TIME_DAY" size="3" onBlur="checkDay('NEXT_V_TIME_DAY');"value="<%=map.get("NEXT_V_TIME")==null? "":map.get("NEXT_V_TIME").toString().substring(0, 10).split("-")[2]%>">日</td></tr><tr><td colspan="5" height="5"></td></tr><tr><td align="center" style="cursor: hand"colspan="5"><img src="<%=basePath%>images/queding.gif" width="51" height="20"onClick="find_dq();"> <img src="<%=basePath%>images/quxiao.gif" width="51" height="20"onClick="window.close();"> <img src="<%=basePath%>images/dayin.gif" width="51" height="20"onClick="print_yl()"></td></tr></table><%} %></form></body></html>?
?
?总结:
我们看到,我是在页面的上方,通过java代码,来条用action中的方法,获取一个iterator,然后将其转换为map类型,
然后通过map.get(列名)进行获取赋值的,但要注意,进行是否为空的逻辑判断方可以及三目运算符的使用;
1 楼 yyqhs 2010-05-29 在jsp页面中直接编写java代码会使页面的可读性和可维护性变得非常差,楼主的代码就是一个很好的反面教材。本来jsp页面中就不应该掺杂业务逻辑,jsp页面应该只有数据显示的功能,再说在jsp页面中直接编写java代码是不是更加方便还要打上一个大大的问号,本人更倾向于使用JSTL。 2 楼 allenny 2011-03-29 刚开始编程时曾经用这种方式写过一个JSP,一千多行,嵌套十几层判断,结果最后无法维护。新手还是多吸取前人的经验。