相关疑难解决方法(0)

Design Patterns基于Web的应用程序

我正在设计一个简单的基于Web的应用程序.我是这个基于Web的域的新手.我需要您对设计模式的建议,例如如何在Servlet中分配责任,制作新Servlet的标准等.

实际上,我的主页上有很少的实体,并且每个实体都对应于我们添加,编辑和删除等几个选项.之前我每个选项使用一个Servlet,比如Servlet1,用于添加entity1,Servlet2用于编辑entity1等等,这样我们最终得到了大量的servlet.

现在我们正在改变我们的设计.我的问题是你如何选择如何选择servlet的责任.我们是否应该为每个实体安装一个Servlet,它将处理所有选项并将请求转发给服务层.或者我们应该为整个页面都有一个servlet来处理整个页面请求,然后将其转发到相应的服务层?此外,请求对象是否应转发到服务层.

java jsp design-patterns servlets

356
推荐指数
3
解决办法
10万
查看次数

Servlet中的doGet和doPost

我已经开发了一个将信息发送到Servlet的HTML页面.在Servlet中,我使用的方法doGet()doPost():

public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException  {

     String id = req.getParameter("realname");
     String password = req.getParameter("mypassword");
}

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {

    String id = req.getParameter("realname");
    String password = req.getParameter("mypassword");
}
Run Code Online (Sandbox Code Playgroud)

在调用Servlet的html页面代码中:

<form action="identification" method="post" enctype="multipart/form-data">
    User Name: <input type="text" name="realname">
    Password: <input type="password" name="mypassword">
    <input type="submit" value="Identification">
</form> 
Run Code Online (Sandbox Code Playgroud)

当我method = "get"在Servlet中使用时,我获得了id和password的值,但是在使用时method = "post",id和password被设置为null.为什么我不能在这种情况下获得值?

我想知道的另一件事是如何使用Servlet生成或验证的数据.例如,如果上面显示的Servlet对用户进行身份验证,我想在HTML页面中打印用户ID.我应该能够将字符串'id'作为响应发送,并在我的HTML页面中使用此信息.可能吗?

java servlets

105
推荐指数
1
解决办法
41万
查看次数

如何在不包含上下文根名称的情况下使用相对路径?

要使用我的静态文件(CSS,JS),我必须编写绝对路径/AppName/templates/style/main.css.有什么解决方案,我可以写相对路径style/main.css吗?

resources jsp servlets relative-path contextpath

76
推荐指数
2
解决办法
16万
查看次数

在/*上映射全局前端控制器servlet时如何访问静态资源

我将Spring MVC调度程序映射为全局前端控制器servlet /*.

<servlet>       
  <servlet-name>home</servlet-name>         
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>     
</servlet>  
<servlet-mapping>       
  <servlet-name>home</servlet-name>         
  <url-pattern>/*</url-pattern>     
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

但是,此映射会停止访问CSS,JS,图像等静态文件,这些/res/文件都在文件夹中.

我怎么能访问它们?

java resources servlets

58
推荐指数
8
解决办法
11万
查看次数

instanceof检查EL表达式语言

有没有办法instanceof在EL 进行检查?

例如

<h:link rendered="#{model instanceof ClassA}">      
    #{errorMessage1}
</h:link>
<h:link rendered="#{model instanceof ClassB}">      
    #{errorMessage2}
</h:link>
Run Code Online (Sandbox Code Playgroud)

jsf el instanceof

35
推荐指数
2
解决办法
2万
查看次数

如何用JSP表达式语言进行HTML编码?

考虑下面的JSP:

<param name="FlashVars" value="${flashVars}" />
Run Code Online (Sandbox Code Playgroud)

${flashVars}包含&符号的值需要在输出之前进行编码.相反,JSP期望值为${flashVars}HTML的一部分,并逐字输出&符号,导致HTML错误.

我发现如果我像这样编写它,我可以得到要编码的值:

<param name="FlashVars" value="<c:out value="${flashVars}"/>" />
Run Code Online (Sandbox Code Playgroud)

但这看起来很丑陋,让我的IDE混乱.有没有更好的方法来获得相同的结果?

java jsp html-encode el

16
推荐指数
1
解决办法
2万
查看次数

如何在jsp中对字符串进行uri编码?

如果我有一个等于url的字符串"output":

${output} = "/testing/method/thing.do?foo=testing&bar=foo"
Run Code Online (Sandbox Code Playgroud)

在jsp中,我如何将该字符串转换为:

%2Ftesting%2Fmethod%2Fthing.do%3Ffoo%3Dtesting%26bar%3Dfoo
Run Code Online (Sandbox Code Playgroud)

运用

<c:out value="${output}"/>
Run Code Online (Sandbox Code Playgroud)

?我需要以某种方式在c:out中使用URLEncoder.encode(url).

java jsp jstl

12
推荐指数
1
解决办法
2万
查看次数

包含Servlet中的私有JSP

我让我的Servlet响应所有"/"url-pattern.在内部我需要有时渲染html,所以我想.包含一个JSP页面,但我希望.jsp在外部是不可访问的.另外,我如何将模型对象传递给它.

java jsp servlets

8
推荐指数
1
解决办法
2438
查看次数

检查JSP是否存在Cookie

我正在尝试使用表达式语言检查JSP页面上是否存在cookie.

我有一个cookie persist被设置为空字符串或"已检查".

如果想检查persistcookie是否存在.

我尝试过以下方法:

<c:if test="${cookie.persist == null}">

<c:if test="${empty cookie.persist}">

以上两个语句都是truepersistcookie的值为空字符串时,而当cookie的值为false时为false checked.

如何区分具有空字符串的cookie作为其值,以及不存在的cookie.

(注意:我可以通过为cookie而不是空字符串分配非空值来轻松解决此问题.)

java jsp servlets el

8
推荐指数
1
解决办法
9644
查看次数

在自定义EL函数中访问JSP Context

如何在自定义EL函数中访问JSP上下文.

jsp el

7
推荐指数
1
解决办法
3409
查看次数