前端功能:
后台功能:
从模板中分析到有以下数据表:用户表(普通用户+管理员),新闻分类标,新闻信息表,评论表
用户信息表:
字段名 |
中文说明 |
数据类型 |
约束 |
备注 |
Userid |
编号 |
Number |
主键 |
|
Username |
用户名 |
Varchar2 |
||
Password |
密码 |
Varchar2 |
||
sex |
性别 |
Varchar2 |
||
Hobby |
爱好 |
Varchar2 |
||
address |
地址 |
Varchar2 |
||
urole |
权限 |
number |
0管理员 1普通用户(默认) |
|
udate |
注册时间 |
date |
分类表|主题表
字段名 |
中文说明 |
数据类型 |
约束 |
备注 |
Tid |
分类编号 |
Nunber |
主键 |
|
tname |
分类名称 |
Varchar2 |
信息表:
字段名 |
中文说明 |
数据类型 |
约束 |
备注 |
Nid |
新闻编号 |
Number |
主键 |
|
nTid |
新闻分类编号 |
Number |
外键 |
|
Ntitle |
标题 |
Varchar2 |
||
Nauthor |
作者 |
Varchar2 |
||
nsummary |
摘要 |
Varchar2 |
||
ncontent |
内容 |
Varchar2 |
||
nimage |
图片 |
Varchar2 |
||
ncount |
点击量 |
number |
||
ndate |
发布时间 |
date |
create table tb_news_users
(
Userid number primary key,
Username varchar2(100),
Password varchar2(100),
sex varchar2(2),
Hobby varchar2(100),
address varchar2(100),
urole number default 1,--0 管理员 1普通用户
udate date
)
insert into tb_news_users
values
(1,'admin','123','男','玩游戏','湖南长沙',0,sysdate)
commit;
select * from tb_news_users;
--主题表
create table tb_news_theme
(
tid number(20) primary key,
tname varchar2(20)
)
insert into tb_news_theme values(1,'国际');
insert into tb_news_theme values(2,'美女');
insert into tb_news_theme values(3,'游戏');
insert into tb_news_theme values(4,'娱乐');
insert into tb_news_theme values(5,'体育');
insert into tb_news_theme values(6,'足浴');
insert into tb_news_theme values(7,'恐怖');
insert into tb_news_theme values(8,'军事');
insert into tb_news_theme values(9,'科技');
insert into tb_news_theme values(10,'数码');
insert into tb_news_theme values(11,'动漫');
commit
create table tb_news
(
nid number(20) primary key,
ntid number(20) references tb_news_theme(tid),
ntitle varchar2(100),
nauthor varchar2(20) ,
nsummary varchar2(200),
ncontent varchar2(2000)
)
insert into tb_news values
(1,2,'毒瘤爱上女总裁1','张三','这是一个怎样的故事1?','那是一个风雨交加的夜晚,毒瘤先生走进了一个无名山洞,做了一件难以忘记的事情');
insert into tb_news values
(2,2,'毒瘤爱上女总裁2','李四','这是一个怎样的故事2?','那是一个风雨交加的夜晚,毒瘤先生走进了一个无名山洞,做了一件难以忘记的事情');
insert into tb_news values
(3,2,'毒瘤爱上女总裁3','张无忌','这是一个怎样的故事3?','那是一个风雨交加的夜晚,毒瘤先生走进了一个无名山洞,做了一件难以忘记的事情');
insert into tb_news values
(4,2,'毒瘤爱上女总裁4','渣渣辉','这是一个怎样的故事4?','那是一个风雨交加的夜晚,毒瘤先生走进了一个无名山洞,做了一件难以忘记的事情');
commit;
select * from tb_news_theme
select * from tb_news
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
项目发布系统-管理员登录
版本信息
管理信息系统 2008 v2.0
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//该页面作用:根据request对象获取登录表单提交的值进行数据库交互
//1.设置编码
request.setCharacterEncoding("utf-8");
//2.获取表单提交的值
//用户名
String username = request.getParameter("username");
//密码
String password = request.getParameter("password");
//3.数据库交互
String uname = "";
String pwd = "";
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//建立连接
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection conn = DriverManager.getConnection(url, "scott", "123");
//sql
String sql = "select * from tb_news_users where username = ? and password = ?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1,username);
ps.setString(2,password);
ResultSet rs = ps.executeQuery();
if(rs.next()){//存在 就可以登录
uname = rs.getString(1);
pwd = rs.getString(2);
}
if(""!=uname && ""!=pwd){
//转发到主页面
request.getRequestDispatcher("admin.jsp").forward(request, response);
}else{
//out.println(js)
response.sendRedirect("login.jsp");
}
%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
项目发布系统-后台主页
欢迎使用项目管理系统!
管理员:<%=request.getParameter("username") %> 登录 login out
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
新闻发布--管理后台
欢迎使用新闻管理系统!
管理员: 登录 退出
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
//作用:获取新增表单的数据进行数据库交互
//1.编码格式
request.setCharacterEncoding("utf-8");
//2.获取表单提交的数据
//编号
int nid = 0;//定义一个变量保存最终的id
//链接数据库查询到最大的id 最后+1
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//建立连接
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
Connection conn = DriverManager.getConnection(url, "scott", "123");
String sql = "select nvl(max(nid),0) from tb_news";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
if(rs.next()){
nid = rs.getInt(1)+1;
}
//新闻分类id
String tid = request.getParameter("ntid");
int ntid = Integer.valueOf(tid);
//标题
String ntitle = request.getParameter("ntitle");
//作者
String nauthor = request.getParameter("nauthor");
//摘要
String nsummary = request.getParameter("nsummary");
//内容
String ncontent = request.getParameter("ncontent");
//新增新闻
sql = "insert into tb_news(nid,ntid,ntitle,nauthor,nsummary,ncontent,ndate,ncount) values (?,?,?,?,?,?,sysdate,0)";
ps = conn.prepareStatement(sql);
ps.setInt(1, nid);
ps.setInt(2,ntid);
ps.setString(3,ntitle);
ps.setString(4,nauthor);
ps.setString(5,nsummary);
ps.setString(6,ncontent);
int n = ps.executeUpdate();
if(n>0){
out.print("");
}else{
out.print("");
}
%>