老师留了作业:在线投票系统,我现在遇到两个问题
1,我的确认登陆按钮和注册按钮在一个form里,怎么才能实现点击不同按钮转向不同的页面(或servlet)?
2,这个项目用accsee数据库,要求以数据源方式访问数据库。。我一点都不会。。求代码(数据库内容就是登陆的姓名和密码)
高手 高手 速度来啊
1,我的确认登陆按钮和注册按钮在一个form里,怎么才能实现点击不同按钮转向不同的页面(或servlet)?
2,这个项目用accsee数据库,要求以数据源方式访问数据库。。我一点都不会。。求代码(数据库内容就是登陆的姓名和密码)
高手 高手 速度来啊
解决方案 »
- spring的注解注入问题,注入失败,求解
- 请教一个关于java处理字符串的问题?
- S2SH全注解报错问题,高手进来看下
- Xdoclet自动生成Hibernate配置文件出错
- 求助MyEclipse 8 开发Struts2+Hibernate
- 远程访问 SQL SERVER2000
- try{}catch(){}的问题
- 为什么dom保存的时候把dtd给漏了?
- 关于Hibernate问题...
- 有用eclipse开发java数据库应用程序的请帮忙 出错数据库连接出错No suitable driver
- javaEE中的hibernate 与.net中的LinQ 原理一样吗?
- 关于webservice并发问题
第二个问题baidu吧,很简单的输入“java连接accsee”数据库
书上没有Google
最基本的一定要会呀
2:用的什么服务器?weblogic去控制台配置,tomcat去TOMCAT_HOME\conf\Catalina\localhost目录下新建
projectName.xml,具体的格式可以网上查一下
如果知道这个的话可以把action做为变量传入javascript方法里,
调用这个javascript方法来提交画面,比如 function doSubmit(action) {
document.forms[0].action = action;
document.forms[0].method = "POST";
document.forms[0].submit();
}
在你submit按钮按下的onclick事件里传入action提交就可以了
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;public class Main {
public static void main(String[] args) throws Exception {
Connection conn = getConnection();
Statement st = conn.createStatement();
// st.executeUpdate("drop table survey;");
st.executeUpdate("create table survey (id int,name varchar(30));");
st.executeUpdate("insert into survey (id,name ) values (1,'nameValue')"); st = conn.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM survey"); ResultSetMetaData rsMetaData = rs.getMetaData(); int numberOfColumns = rsMetaData.getColumnCount();
System.out.println("resultSet MetaData column Count=" + numberOfColumns); st.close();
conn.close();
} private static Connection getConnection() throws Exception {
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:northwind";
String username = "";
String password = "";
Class.forName(driver);
return DriverManager.getConnection(url, username, password);
}
}
Using a DataSource Object for a Connection
估计就是这个意思吧,你试试能用在access上不 public Connection getConnectionWithDataSource(String dbmsName, String dbNameArg, String userName, String password, String serverName, int portNumber) throws SQLException {
Connection conn = null; if (dbmsName.equals("mysql")) {
com.mysql.jdbc.jdbc2.optional.MysqlDataSource ds = null;
ds = new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
ds.setUser(userName);
ds.setPassword(password);
ds.setServerName(serverName);
ds.setPortNumber(portNumber);
conn = ds.getConnection();
} else if (dbmsName.equals("derby")) {
org.apache.derby.jdbc.EmbeddedDataSource ds = null;
ds = new org.apache.derby.jdbc.EmbeddedDataSource();
ds.setDatabaseName(dbNameArg);
ds.setUser(userName);
ds.setPassword(password);
conn = ds.getConnection();
}
System.out.println("Connected to database");
return conn;
}
JNDI的使用方法
服务器的配置文件 server.xml 里配置数据库连接 <Context path="/sample" docBase="/home/tomcat/sample" debug="0"
reloadable="true" crossContext="true">
<Logger ... />
<Resource name="jdbc/datasource" auth="Container"
type="javax.sql.DataSource" />
<ResourceParams name="jdbc/datasource">
<parameter>
<name>username</name>
<value>连接数据库用户名</value>
</parameter>
<parameter>
<name>password</name>
<value>连接数据库密码</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>sun.jdbc.odbc.JdbcOdbcDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:odbc:Access数据库数据源名称</value>
</parameter>
</ResourceParams>
</Context>
web.xml <resource-ref>
<res-ref-name>jdbc/datasource</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>CONTAINER</res-auth>
</resource-ref>数据源的使用import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.io.PrintWriter;
import java.io.IOException;
public class DataSourceServlet extends HttpServlet{
private DataSource dataSource=null; public void init() throws ServletException{
try{
Context context=new InitialContext();
dataSource=(DataSource)context.lookup("java:comp/env/jdbc/datasource");
}catch(NamingException e){
throw new ServletException(e);
}
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException{
response.setContentType("text/html; charset=SJIS");
PrintWriter writer=response.getWriter();
writer.println("<html><body><ul>");
Connection conn=null;
try{
conn=dataSource.getConnection();
PreparedStatement statement
=conn.prepareStatement("select name from meibo");
ResultSet result=statement.executeQuery();
while(result.next()){
writer.println("<li>"+result.getString(1)+"</li>");
}
}catch(SQLException e){
e.printStackTrace(writer);
}finally{
try{
if(conn!=null) conn.close();
}catch(SQLException e){}
} writer.println("</ul></body></html>");
}
}
charset=你jsp里设置的字符集。最好用UTF-8
项目2:在线投票系统项目开发环境:本项目使用J2EE技术和Tomcat服务器进行开发。集成开发环境推荐采用MyEclipse6.5及以上本本,数据库推荐采用MySQL 5.0。项目概述:系统显示投票的选项,用户选中某个选项进行投票,投票结束后用户可查看投票结果。项目实现功能:1、用户注册、登录、退出功能。
2、登录后显示投票选项。
3、选中选项后进行投票
4、用户投票结束后可查看投票结果。现要求在线投票系统进行设计与实现,用来对投票进行管理,设计过程注意MVC设计模式和DAO设计模式的使用。采用数据源方式对数据库进行访问
给你些提示吧,做是不可能的了,我还要工作。[
1、用户注册、登录、退出功能。
答:用form认证,关于form认证.form认证给你提供了登录和报错功能但是没给你提供退出功能。
退出很简单,自己做个logout功能就行了把session设成无效,例如:session.invalidate();
form认证参照下面的链接
url=http://onjava.com/pub/a/onjava/2002/06/12/form.html][/url] 2、登录后显示投票选项。
3、选中选项后进行投票
4、用户投票结束后可查看投票结果。这就是你主要的功能了吧,一个很简单的页面功能,主要就是数据库的更新功能。
你设计一张表存选票信息,在设计一张表来存储投票情况就可以了。
如果没有对投票人的性别年龄等的要求,只要求投票数的话,设计成一张表也可以。
你可以看看其它的有投票功能的网站,模仿就可以了。>>设计过程注意MVC设计模式和DAO设计模式的使用。
关于这一点跟对工程和j2ee的理解有关系。就你所要实现的功能来说,不用考虑多么复杂。
你就别把所有的功能都写在jsp页面里就算满足你老师的要求了。
最基本的设计JavaBean来保存你的投票数据
把数据库操作封装到你的Dao类里,用JavaBean来作为传递参数和返回值。
你也可以建一个普通类来封装你的投票功能
然后在你的httpServlet调用你普通类的方法
如果年这个流程走了,建一个dao,一个或几个javabean(按需要来),一个business类,和一个servlet,3个jsp(login用,错误表示用,投票画面用)
就算你完成了你的MVC,因为你的功能实在太少了,所以不用考虑那么多。框架什么的不用去想了