📄 mysqlnewsfactory.java
字号:
package net.ijsp.news.news.mysql;
/**
* Title 新闻相关操作
* @author: ccjsmile
* Company: http://www.ijsp.net
* Copyright: Copyright (c) 2003
* @version 1.0 beta
*/
import java.util.Iterator;
import java.util.ArrayList;
import java.sql.ResultSet;
import java.sql.SQLException;
import net.ijsp.news.news.Factory;
import net.ijsp.news.news.News;
import net.ijsp.news.news.NewsFactory;
import net.ijsp.news.database.DBConnect;
import net.ijsp.news.search.SearchManager;
public class MysqlNewsFactory extends NewsFactory{
private ResultSet rs ;
/**
* 添加新闻
*/
public void add(News news) {
DBConnect dbc = null;
try{
dbc = new DBConnect();
dbc.prepareStatement("INSERT INTO news (class,editer,title,newsfile,date) VALUES (?,?,?,?,?) ");
dbc.setInt(1,news.getBoardID());
dbc.setString(2,news.getEditer());
dbc.setString(3,news.getTitle());
dbc.setString(4,news.getNewsFile());
dbc.setLong(5,news.getDate());
dbc.executeUpdate();
}catch(SQLException se){
System.err.println(se);
System.err.println("MYsqlNewsFactory.add");
}finally{
try{
if(dbc!=null)
dbc.close();
}catch(Exception e){
System.err.println(e);
}
}
// 建索引
SearchManager searchManager = Factory.getInstance().getSearchManager();
searchManager.addToIndex(news);
}
/**
* 删除新闻
*/
public void del(int id) {
DBConnect dbc = null;
try{
dbc = new DBConnect();
dbc.prepareStatement("DELETE FROM news WHERE id=?");
dbc.setInt(1,id);
dbc.executeUpdate();
}catch(SQLException se){
System.err.println(se);
System.err.println("MYsqlNewsFactory.del");
}finally{
try{
if(dbc!=null)
dbc.close();
}catch(Exception e){
System.err.println(e);
}
}
}
/**
* 编辑新闻
*/
public void edit(News news) {
}
/**
* 显示指定栏目新闻
* @param int boardID:新闻栏目ID, int startPage:开始页, int perPage:每页显示新闻数
*/
public Iterator list(int boardID,int startPage,int perPage) {
ArrayList arrayList = new ArrayList();
DBConnect dbc = null;
try{
dbc = new DBConnect();
dbc.prepareStatement("SELECT id,class,title,newsfile,editer,date FROM news WHERE class= ? ORDER BY date DESC LIMIT ?,?");
dbc.setInt(1,boardID);
dbc.setInt(2,(startPage-1)*perPage);
dbc.setInt(3,perPage);
rs = dbc.executeQuery();
while(rs.next()) {
News news = Factory.getInstance().getNews();
news.setID(rs.getInt(1));
news.setBoardID(rs.getInt(2));
news.setTitle(rs.getString(3));
news.setNewsFile(rs.getString(4));
news.setEditer(rs.getString(5));
news.setDate(rs.getLong(6));
arrayList.add(news);
}
}catch(SQLException se){
System.err.println(se);
System.err.println("MYsqlNewsFactory.list");
}finally{
try{
if(dbc!=null)
dbc.close();
}catch(Exception e){
System.err.println(e);
}
}
return arrayList.iterator();
}
/**
* 显示指定新闻信息
*/
//public abstract News news(int newsID) throws ;
/**
* 指定斑面新闻数
*/
public int count(int boardID) {
int count = 0;
DBConnect dbc = null;
try{
dbc = new DBConnect();
dbc.prepareStatement("SELECT COUNT(id) FROM news WHERE class= ? ");
dbc.setInt(1,boardID);
rs = dbc.executeQuery();
if(rs.next())
count = rs.getInt(1);
}catch(SQLException se){
System.err.println(se);
System.err.println("MYsqlNewsFactory.count");
}finally{
try{
if(dbc!=null)
dbc.close();
}catch(Exception e){
System.err.println(e);
}
}
return count;
}
/**
* 显示最近文章
* @param int startPage:开始页, int perPage:每页显示新闻数
*/
public Iterator listNew(int startPage,int perPage) {
ArrayList arrayList = new ArrayList();
DBConnect dbc = null;
try{
dbc = new DBConnect();
dbc.prepareStatement("SELECT id,class,title,newsfile,editer,date FROM news ORDER BY date DESC LIMIT ?,?");
dbc.setInt(1,(startPage-1)*perPage);
dbc.setInt(2,perPage);
rs = dbc.executeQuery();
while(rs.next()) {
News news = Factory.getInstance().getNews();
news.setID(rs.getInt(1));
news.setBoardID(rs.getInt(2));
news.setTitle(rs.getString(3));
news.setNewsFile(rs.getString(4));
news.setEditer(rs.getString(5));
news.setDate(rs.getLong(6));
arrayList.add(news);
}
}catch(SQLException se){
System.err.println(se);
System.err.println("MYsqlNewsFactory.listNew");
}finally{
try{
if(dbc!=null)
dbc.close();
}catch(Exception e){
System.err.println(e);
}
}
return arrayList.iterator();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -