怎么在jsp中合理使用java代码?

我刚开始学jsp的时候,听说jsp就是把java语句写到html里面去,如果学过java和html,那么jsp很简单。我开始学的时候也觉得jsp不难,但是最近看了el和j... 我刚开始学jsp的时候,听说jsp就是把java语句写到html里面去,如果学过java和html,那么jsp很简单。我开始学的时候也觉得jsp不难,但是最近看了el和jstl,感觉他们的作用就是来替代java脚本的,书上说要尽量避免在jsp中使用java脚本,这和我一直以来的想法矛盾啊!我写的jsp里面有大量的java脚本,还听说要把业务逻辑写到javabean里面,这样可以提高网页的可维护性,到底什么是业务逻辑呢?像:
<%
name=(String)session.getAttribute("uname");
password = (String)session.getAttribute("upassword");
// date = (Date)session.getAttribute("lastLogin");
if(name==null)
{
Cookie[] cookies= request.getCookies();
if(cookies !=null)
{
for(Cookie c: cookies)
{
if((c.getName()).equals("uname"))
{
name = c.getValue();
hasCookie = true;
response.addCookie(c);
}
}
}
}
if(name!=null)
{
out.println("你好!"+ name);
// out.println(" 登录时间:" + date);
%>
这些属于业务逻辑吗?我的网页有大量这样的代码,这样合理吗?这些也能写到javabean里吗?应该怎么改呢?
展开
 我来答
黄李子
2008-08-20 · 超过26用户采纳过TA的回答
知道答主
回答量:88
采纳率:0%
帮助的人:88.7万
展开全部
这样属于业务逻辑层啊,代码中除了与底层数据库连接的代码,还有显示的代码之外,只要是执行逻辑判断和信息处理的都是业务逻辑层,将其分离写道javabean里面可以增加可维护性。
尽量避免在JSP中出现大量的JAVA代码,JSP只是负责显示
在JSP中出现EL表达式可以使代码更简洁
不过楼主如果是新学JSP,倒也没什么关系,慢慢就会知道了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友997ab03
2008-08-20 · TA获得超过629个赞
知道小有建树答主
回答量:264
采纳率:0%
帮助的人:330万
展开全部
书上说要尽量避免在jsp中使用java脚本,首先这肯定是正确的,太多的java脚本会使页面变得臃肿、可维护性差,也会影响性能.
理论上说是应该使用jstl来代替这些脚本,以方便对程序语言相对陌生的网页设计人员查看和修改页面,jsp只做展现的功能.
而就我经历的实际项目中并非如此,使用web框架的标签往往是最多的,但也存在java脚本,只是量不多.我不知道其他的同行们是怎么做的,也许是我们的项目管理和对代码的要求都不严格,不过目前来看维护问题不大,因为设计人员、开发人员和网页设计人员经常都是那一个人,美工倒是有,她每天只管聊QQ,呵呵.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
南风起航
2008-08-20 · TA获得超过1212个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:165万
展开全部
可以把java脚本封装起来,形成javabean,然后在jsp中通过jstl标签里的<jsp:usebean>使用他们,这样做的好处是代码的分离和重用性,而且易于维护
建议你学习jstl标签,实际开发中用得挺多的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
llandjay
2008-08-20 · 超过16用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:48.2万
展开全部
首先不合理
才开始学无所谓, 但是之后会发现这样的代码难以维护, 您说的很清楚jstl和el都是为了页面上的尽可能的零脚本,建议您看看MVC, 然后他们的jstl和el的用处就明白了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a332149354
2008-08-20
知道答主
回答量:89
采纳率:0%
帮助的人:34.3万
展开全部
一般自己练习,为了节省时间,可以这样做。
但是作为一个程序员,这样做就不合理了。我们现在做开发都有许多标准和框架
比如Struts。
因此我们从现在就要严格要求自己,有空就去(CSDN)看看,有很多好东西,一般我们程序员都去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式