I have done inserting a record into database but I don t know how to retrieve it. My code is: Account.java:
package com.fetch;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Id;
public class Account implements Serializable
{
@Id
private long id;
@Column(name="NAME")
private String name;
public Account()
{
}
public Account(int id, String name)
{
this.id = id;
this.name = name;
}
public long getId()
{
return id;
}
public void setId(long id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
}
MyAccount.java:
package com.fetch;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collection;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
@WebService()
@Entity
@Table(name = "CUSTOMER")
@Path("/user")
@NamedQuery(name="loginquery", query="select ID,NAME from CUSTOMER")
public class MyAccount
{
private Account ac;
public MyAccount()
{
// TODO Auto-generated constructor stub
ac = new Account();
}
@POST
@Path("/fetch")
@WebMethod(operationName = "insert")
public String insert(@FormParam("name") String name)
{
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/studentinfo", "root", "root");
String query = "insert into CUSTOMER"+"(NAME) VALUES"+"(?)";
PreparedStatement st = con.prepareStatement(query);
st.setString(1,name);
st.executeUpdate();
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
return"Record inserted successfully";
}
public Account getAc()
{
return ac;
}
public void setAc(Account ac)
{
this.ac = ac;
}
}
<>strong>insert.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert</title>
</head>
<body>
<form action="rest/user/fetch" method="POST">
<p>
Name : <input id="name" name="name" />
</p>
<input type="submit" value="Add" />
<input type="submit" value="Retrive" />
</form>
</body>
</html>
<>strong>web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>FetchAndInsert</display-name>
<servlet>
<servlet-name>REST Servlet</servlet-name>
<servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com.fetch</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>REST Servlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
How to retrieve the data from the database when the user clicks on the retrieve button, and display all the records in another HTML form? Please give suggestions on how to do it.
In my application, when the user clicks the retrieve button it is performing the insert operation. But I want is, when the user clicks it should go to the another page and display the data in table from database.
谁能告诉我已经做的错误,并就如何找到解决办法提出建议,以及如何在用户点击检索的纽顿时在其他网页上展示动态表格?