- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是这个社区的新手,想出了我的第一个问题。
我正在使用 JSP,我成功地创建了 JSP-Sites,它正在使用jsp:setParameter 和 jsp:getParameter 具有单个字符串。
现在我想对整个对象做同样的事情(是的,我知道字符串也是一个对象 :P)。我尝试了以下方法:
这是我的 Bean:
@Entity
@Table(name="TBL_SPJ_MOVIE")
public class Movie implements Serializable {
@Id
@Column(name="MOVIE_ID", unique=true)
private int movieID = 0;
@Column(name="MOVIE_BACKDROPPATH")
private String backDropPath = "";
@Column(name="MOVIE_ORIGINALTITLE")
private String originalTitle = "";
@Column(name="MOVIE_POPULARITY")
private double popularity = 0.0;
@Column(name="MOVIE_POSTERPATH", length=1000)
private String posterPath = "";
@Temporal(TemporalType.DATE)
@Column(name="MOVIE_RELEASEDATE")
private Date releaseDate = null;
@Column(name="MOVIE_TITLE")
private String title = "";
@Column(name="MOVIE_ADULT")
private boolean adult = false;
@Column(name="MOVIE_BUDGET")
private int budget = 0;
@Column(name="MOVIE_HOMEPAGE", length=1000)
private String homepage = "";
@Lob
@Column(name="MOVIE_OVERVIEW", length=1000)
private String overview = "";
@Column(name="MOVIE_RUNTIME")
private int runtime = 0;
@Column(name="MOVIE_VOTEAVERAGE")
private double voteAverage = 0.0;
@Column(name="MOVIE_VOTECOUNT")
private int voteCount = 0;
public Movie() {}
//##########################################################################################
@SuppressWarnings("unchecked")
@Transient
public List getMovies() {
List movies = new ArrayList();
EntityManagerFactory factory = Persistence.createEntityManagerFactory("SPJUnit");
EntityManager em = factory.createEntityManager();
Query query = em.createQuery("SELECT m FROM Movie m");
movies = (List)query.getResultList();
return movies;
}
@Transient
private Movie currentMovie = null;
public Movie getCurrentMovie() {
return currentMovie;
}
public void setCurrentMovie(Movie currentMovie) {
this.currentMovie = currentMovie;
}
//##########################################################################################
// Getter and Setter
public String toString() {
return title;
}
}
这是我的 movies.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<đầu>
Movie Titles
đầu>
Movie Titles
这里有一个包含所有电影的大列表。我想是因为我的 toString() 方法所有标题都打印出来了吗?好吧,有了这些表格,我想将选定的电影提交给另一个 jsp:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<đầu>
Movie
đầu>
似乎只发送了电影的标题,因为当我调用 singleMovie.jsp 时出现以下错误:
org.apache.jasper.JasperException: org.apache.jasper.JasperException: org.apache.jasper.JasperException: PWC6338: Cannot convert "Ariel" for the attribute currentMovie of the bean de.Movie: PWC6348: Property editor not registered with the PropertyEditorManager
“Ariel”是我选择提交的电影的标题。
我想发送整部电影,这样我就可以在我的文件中使用 Movie-Bean 的所有字段singleMovie.jsp.
只要我只处理电影的标题,一切都很好。
那我做错了什么?
1 Câu trả lời
您似乎没有意识到 HTML 和 HTTP 不适用于对象。他们只能提交字符串参数。
您不应仅使用 JSP 构建应用程序。 JSP 非常适合生成 HTML。其余部分(获取参数、验证参数、从数据库检索对象和将对象保存到数据库等)应该使用 Java 代码、在 servlet 中或在您首选的 MVC 框架的 Controller 中完成。
您也不应该将整部电影发送到服务器来显示它。电影在服务器端的数据库中。服务器需要从客户端获取的只是它必须显示的电影的 ID。所以应用程序应该像这样工作:
displayMovie?id=theMovieId
的链接。当应该使用链接时,不要使用仅包含按钮的表单。 nhận dạng
参数的值。它使用此 ID 在数据库中查找电影,并将其存储在请求属性中完全忘记 jsp:useBean、jsp:setProperty 和 jsp:getProperty。它们属于过去,不应再使用。
此外,对数据库执行查询以获取电影的方法不应该在 Movie 类中。它们应该在 MovieDAO
类中。仅仅为了从数据库中获取其他电影而实例化一部电影没有多大意义。实体的责任不是查询数据库。
关于JSP 获取/设置整个对象的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16638668/
是否可以让标准 Java EE servlet 容器将文件解释并呈现为 JSP,即使该文件没有 .jsp 扩展名? 假设我的 WAR 根目录中有一个名为 foo.xyz 的文件。该文件包含一些 jST
đóng cửa. Câu hỏi này không đáp ứng được hướng dẫn của Stack Overflow. Hiện tại câu hỏi này không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Cập nhật câu hỏi để nó phù hợp với chủ đề của Stack Overflow. Đã đóng cửa 6 năm trước. Cải thiện điều này
我有几个通用元素(组件),它们会生成一些 html。似乎我的选择是创建一个 taglib,或者只是将该逻辑放入一个 jsp 页面并包含 jsp。 有什么不同?积极与消极? 最佳答案 Taglibs 允
我是 Ejb-JSP 的新手,对它知之甚少。我已经创建了一个 JSP 页面,它调用 Controller Servlet,而 servlet 调用 EJB。结构就像 JSP -> Servlet ->
我想编写一个自定义 JSP 标签,其输出包括其他 JSP 标签,这些标签本身也应该被动态评估。但显然我的一切TagSupport子类写入 pageContext.getOut()无需任何进一步评估,直
我有一个包含页面顶部内容的 JSP,我们称它为 header.jsp。出于性能原因,我想呈现此 JSP 并将其刷新给用户,然后再构建页面的其余部分。 (有关性能优势的解释,请参阅 here。) 我能想
我发现自己在处理一些旧的 JSP,想做一些简单的事情,比如以 dd/mm/yyyy 格式显示今天的日期 好像没那么简单, 到目前为止,我已经导入了 java.util.* 我试过很多东西 String
关于 JSP 标签字符集的简单问题。 mytag很简单。 tag文件位于 WEB-INF/tags .这个文件在 Eclipse 中的字符集是 UTF-8。出于某种原因,UTF-8 符号无法
这让我很吃惊!我的 JSP 中有以下代码。 在我重构 SlideShow 类并公开所有属性并删除 getter/setter 之前,这段代码一直有效。所以在我看来,EL 只适用于 getter 而不
现有的一组 JSP,用英文字段标签、javascript 错误/信息消息、图像“alt”消息等硬编码,需要多语言化。 将这些 JSP 转换为使用标准 Java 多语言功能(资源包、语言环境等)的最佳方
Đã đóng. Câu hỏi này cần tập trung hơn. Đã đóng. Câu hỏi này cần tập trung hơn. Hiện tại không chấp nhận câu trả lời. Bạn muốn cải thiện vấn đề này? Cập nhật câu hỏi để nó chỉ tập trung vào một vấn đề bằng cách chỉnh sửa bài đăng này
我已经在 Tomcat 6.0 下部署了我们的 War 到 Linux 服务器。在那个 Linux 机器上,我们没有打开浏览器的权限。 是否可以从命令行执行 JSP? 最佳答案 您可以使用其中 wge
有没有人建议为 JSP 设置最佳缓冲区大小?您可以使用以下页面指令在 JSP 中设置缓冲区大小 我的问题如下 我的理解是,您使用的缓冲区大小越小,客户端浏览器的性能就越好。我的假设正确吗?如
我们正在使用 JBoss 7.1.3.Final 和 Java 6。我想将 UTF-8 页面编码应用于我们网站上提供的所有 JSP 页面,因此我将其添加到我们的 web.xml 文件中
学过jsp native,想包含动态文件。我想使用 include 调用动态页面 这段代码 如果我输入 dashboard.jsp?p=about 页面打开“pages/a
在我的 JSP 页面中,我希望链接转发到另一个 JSP 页面。当用户在 home.jsp 上时,我希望他们转到 login.jsp 等。我遇到的问题是无法找到 JSP,除非我将页面放在项目文件夹中(在
我正在尝试在新的grails应用程序中使用index.jsp切换index.gsp。我将默认的index.gsp重命名为not_index.gsp,并添加了index.jsp。现在,我收到以下错误。
是否可以从服务器端 jsf 代码将资源打开到新的浏览器选项卡(如命令按钮的 target="_newtab")? 以下代码在同一选项卡中打开资源: FacesContext.getCurrentIns
我想问一个关于 .jsp 的问题。使用 jsp 语法(例如 )和 XML 语法(例如 ... )有什么不同。使用其中一种语法是否有维护或某种 advs?谢谢。 最佳答案 原始的 语法更加紧凑,但如
JSP 文件是否有行业标准命名约定? 我遇到过来自不同来源的三种约定: 全部小写 (thisismyfile.jsp) 首字母小写的驼峰式大小写 (thisIsMyFile.jsp) 首字母大写的驼峰
Tôi là một lập trình viên xuất sắc, rất giỏi!