本次项目要用jsp做一个网站,考虑到布属环境所限,不敢用网络数据库,就用了access数据库,路径是个问题。
- 问题一描述: mdb数据库文件不知该放到工程哪个目录。
- 问题解释:我用Netbeans6.1 IDE开发,工程目录文件夹 build、dist、lib、nbproject、src、test、web 。起初我将mdb文件放到工程根下,和以下文件夹平级,不行。放入web文件夹上与jsp文件平级,不行。放入build文件下也不行。连库时找不到文件呀
- 解决:
- 特别说明
我以为这样可以了,但调试时出现了以上的 stmt.executeUpdate("insert into [t1]([name]) values('中国')"); //插入记录 语句执行成功,但我打开数据库不见有记录插入的情况,后来查了资料后才知道,这是对访问路径的不了解造成的。具体情况如下:
- 在Netbeans IDE工程中,以上代码我读取的是“build/web/WEB-INF/classes/”下的mdb,但在"构建"(生成)工程时,需要从源路径“工程根/web/WEB-INF/classes/”下读取源mdb到以上构建路径下,换句话说,ide在编译生成工程时,会从“web/WEB-INF/classes/”下将mdb拷到“build/web/WEB-INF/classes/”下,因此,其实以上代码是insert到了build/web/WEB-INF/classes/下的mdb了,而在web/WEB-INF/classes/下的mdb并未因此改变。
另外:
如果你用了resp.sendRedirect(url); ,就要吧东西存在session里,在 B 里
用session取。
如果你用了RequestDispatcher rd = request.getRequestDispatcher("url");
rd.forward(request, response); 那么你就可以存在requset里。