BootStrap实现邮件列表的分页和模态框添加邮件的功能

网友投稿 376 2023-07-03


BootStrap实现邮件列表的分页和模态框添加邮件的功能

废话不多说具体代码如下所示:

package com.rc.controller;

import java.io.IOException;

import java.io.PrintWriter;

import java.utiEUfdVwl.ArrayList;

import java.util.List;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

import net.sf.json.JSONObject;

import com.rc.dao.R_mailboxDAO;

import com.rc.daoimpl.R_mailboxDAOimpl;

import com.rc.dbutil.Sqltools;

import com.rc.entity.Mailbox;

import com.rc.entity.R_user;

import com.rc.entity.TreeNodes;

import com.rc.util.Page;

import com.rc.util.PageUtil;

public class MailBoxServlet extends HttpServlet {

/**

* The doGet method of the servlet.

*

* This method is called when a form has its tag value method equals to get.

*

* @param request the request send by the client to the server

* @param response the response send by the server to the client

* @throws ServletException if an error occurred

* @throws IOException if an error occurred

*/

@Override

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType("text/html;charset=utf-8");

String action =request.getParameter("action");

HttpSession hs = request.getSession(false); //读取登录人员session

R_user cuser =(R_user)hs.getAttribute("user");

PrintWriter out = null;

R_mailboxDAO mb = new R_mailboxDAOimpl();

boolean b = true;

if("page".equals(action)){//查询所有

int pageNumber = 0;

String PageNumberstr = request.getParameter("pageNumber");//从页面获取的当前页

int count =mb.getcount();

if(PageNumberstr == null||"".equals(PageNumberstr)){

pageNumber= 1;

}else{

pageNumber = Integer.parseInt(PageNumberstr);//否则强转

}

List pages = new ArrayList();

Page page = PageUtil.createPage(5, count, pageNumber);

pages.add(page);

List mailboxlist = mb.getcostList(page);

JSONObject obj = new JSONObject();//定义一个json对象

obj.put("mailbox", mailboxlist);

obj.put("Page", pages);

out = response.getWriter();

out.write(obj.toString());

}else if("delete".equals(action)){//删除操作

String mid = request.getParameter("id");

JSONObject obj = new JSONObject();

b =mb.delete(Integer.parseInt(mid));//用boolean接收

obj.put("biaozhi",b);

out = response.getWriter();

out.write(obj.toString());

}else if("edit".equals(action)){//弹出编辑页面

}else if("tedit".equals(action)){//提交编辑信息

}else if("pldelete".equals(action)){//批量删除

JSONObject obj = new JSONObject();

String deleteidlist = request.getParameter("deleteidlist");

String[] item = deleteidlist.split(",");

for (int i = 0; i < item.length; i++) {

b =mb.delete(Integer.parseInt(item[i]));

}

obj.put("biaozhi",b);

out = response.getWriter();

out.write(obj.toString());

}else if("tree".equals(action)){

List treelist = mb.getnodes();

JSONObject obj = new JSONObject();//定义一个json对象

obj.put("treelist", treelist);

out = response.getWriter();

out.write(obj.toString());

}else if("save".equals(action)){

String id = request.getParameter("id");

String zhuti = request.getParameter("zhuti");

String content = request.getParameter("content");

Mailbox mail = new Mailbox();

mail.setS_id(Integer.parseInt(id));//收件人

mail.setS_name(Sqltools.findusername(Integer.parseInt(id)));//收件人姓名

mail.setP_name(cuser.getUsername());//发件人姓名

mail.setP_id(cuser.getId());

mail.setContent(content);

mail.setTitle(zhuti);

b = mb.addmailbox(mail);

JSONObject obj = new JSONObject();

obj.put("biaozhi", b);

out = response.getWriter();

out.write(obj.toString());

}

}

/**

*http:// The doPost method of the servlet.

*

* This method is called when a form has its tag value method equals to post.

*

* @param request the request send by the client to the server

* @param response the response send by the server to the client

* @throws ServletException if an error occurred

* @throws IOException if an error occurred

*/

@Override

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

this.doGet(request, response);

}

}

dao层

package com.rc.dao;

import java.util.List;

import com.rc.entity.Mailbox;

import com.rc.entity.TreeNodes;

import com.rc.util.Page;

public interface R_mailboxDAO {

public List getcostList(Page page); //获取全部的邮件

public int getcount();//获取数目

public boolean delete(Integer id); //删除

public boolean add(Mailbox mail);//写信

public boolean update(Integer id);//修改

public List getnodes();//树

public boolean addmailbox(Mailbox mail);//添加邮件

}

daoimpl

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.ArrayList;

import java.util.List;

import com.rc.dao.R_mailboxDAO;

import com.rc.dbutil.Sqltools;

import com.rc.entity.Mailbox;

import com.rc.entity.TreeNodes;

import com.rc.util.Page;

import com.rc.util.StringUtil;

public class R_mailboxDAOimpl implements R_mailboxDAO {

boolean b=true;

Connection cnn = null;

PreparedStatement ps = null;

ResultSet rs= null;

Statement st = null;

String sql="";

@Override

public List getcostList(Page page) {

List mailboxlist = new ArrayList();//定义一个数组

int startsize = page.getCurrentPage()*page.getEverPage();

int endsize = (page.getCurrentPage()-1)*page.getEverPage()+1;

sql = "select * from (select a1.*,rownum rn from (select * from mailbox order by m_id desc) a1 WHERE rownum<="+startsize+") where rn>="+endsize+"";

try{

rs =Sqltools.excuteQuery(sql, null);

while(rs.next()){

Mailbox mailbox = new Mailbox();

mailbox.setMid(rs.getInt("m_id"));

mailbox.setP_name(rs.getString("p_name"));

mailbox.setS_name(rs.getString("r_name"));

mailbox.setStatus(rs.getString("r_status"));

mailbox.setContent(rs.getString("r_content"));

mailbox.setTitle(rs.getString("r_title"));

mailbox.setR_time(StringUtil.TimetoString(rs.getDate("r_time")));

mailboxlist.add(mailbox);

}

}catch(Exception e){

Sqltools.close(rs, st, cnn);

}

return mailboxlist.size()==0 ? null:mailboxlist;

}

@Override

public int getcount() {

int count =0;

sql = "select count(*) from mailbox";

try{

cnn = Sqltools.getConnection();

ps = cnn.prepareStatement(sql);

rs = ps.executeQuery();

if(rs.next()){

count = rs.getInt(1);

}

}catch(Exception e){

e.printStackTrace();

}finally{

Sqltools.close(rs, ps, cnn);

}

return count;

}

@Override

public boolean delete(Integer id) {

sql="delete from mailbox where m_id=?";

try{

cnn=Sqltools.getConnection();

ps=cnn.prepareStatement(sql);

ps.setInt(1, id);

ps.executeUpdate();

}catch(Exception e){

b=false;

e.printStackTrace();

}finally{

Sqltools.aclose(rs, ps, cnn);

}

return b;

}

@Override

public boolean add(Mailbox mail) {

return false;

}

@Override

public boolean update(Integer id) {

return false;

}

@Override

public List getnodes() {//得到树节点

String sql = "select * from tree_table order by nid ";

cnn = Sqltools.getConnection();

ArrayList treelist = new ArrayList();

try {

ps = cnn.prepareStatement(sql);

rs =ps.executeQuery();

while (rs.next()){

TreeNodes node = new TreeNodes();

node.setNid(rs.getInt("nid"));

node.setParentId(rs.getInt("parentid"));

node.setNodeName(rs.getString("nodename"));

treelist.add(node);

}

} catch (SQLException e) {

e.printStackTrace();

}finally{

Sqltools.aclose(rs, ps, cnn);

}

return treelist;

}

@Override

public boolean addmailbox(Mailbox mail) {

sql = "insert into mailbox(m_id,p_name,r_name,p_id,r_id,r_content,r_title,r_send,r_status,r_time) values(mailbox_id_seq.nextval,?,?,?,?,?,?,?,?,sysdate)";

try{

cnn =Sqltools.getConnection();

ps = cnn.prepareStatement(sql);

ps.setString(1,mail.getP_name());

ps.setString(2,mail.getS_name());

ps.setInt(3,mail.getP_id());

ps.setInt(4,mail.getS_id());

ps.setString(5,mail.getContent());

ps.setString(6,mail.getTitle());

ps.setString(7,"0");//是否发送

ps.setString(8,"3");//是否读取

ps.executeUpdate();

}catch(Exception e){

b = false;

e.printStackTrace();

}finally{

Sqltools.aclose(rs, ps, cnn);

}

return b;

}

}

jsp页面

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

功能开发中

全选

主题

发件人

邮件内容

接收时间

是否读取

操作

全选

序号

发件人

邮件内容

接收时间

是否读取

编辑

全选

序号

发件人

邮件内容

接收时间

是否读取

编辑

jMeter 是一款开源的测试软件。它是 100% 纯 Java 应用程序,用于负载和性能测试。

EUfdVw

Enterprise Java Beans(EJB)是一个创建高度可扩展性和强大企业级应用程序的开发架构,部署在兼容应用程序服务器(比如 JBOSS、Web Logic 等)的 J2EE 上。

全选

序号

发件人

邮件内容

接收时间

是否读取

编辑

js

page1();

initTree();

shouwtree();

$('#treediv').mouseleave(function(){//在鼠标离开选择树的时候,选择书影藏

//alert("进来了");

$("#treediv").hide();

});

});

function Delete(mid){

swal({ title: "你确定要进行该操作?",

text: "You will not be able to recover this imaginary file!",

type: "warning",

showCancelButton: true,

confirmButtonColor: "#DD6B55",

confirmButtonText: "是的, 删除!",

cancelButtonText: "不, 取消",

closeOnConfirm: false,

closeOnCancel: false },

function(isConfirm){

if (isConfirm) {

var action = "delete";

$.ajax({

type : "post",

url : "MailBoxServlet",

datatype:'json',

data:{action:action,id:mid,a:Math.random()},

success : function(data){

var d= eval('('+data+')');

if(d.biaozhi==true){

swal("删除!", "删除成功", "success");

//window.location.reload();这种方式无法显示成功提示

$("#list").empty();

page1();

}else{

swal("Deleted!", "删除失败", "error");

}

}

});

}

else {

swal("", "你已经取消的该操作 ", "error");

}

});

}

function Edit(mid){

alert(mid);

}

function pl(){//批量删除

var checkedList = new Array();

var ids = "";

if($("input[name='deleteCusersid']:checked").length>0){

$("input[name='deleteCusersid']").each(function(){

if($(this).prop("checked")){//如果要未选中的 ==false 就可以了

//ids += $(this).val()+",";

checkedList.push($(this).val());

}

});

swal({ title: "你确定要删除这"+checkedList.length+"行?",

//text: "You will not be able to recover this imaginary file!",

type: "warning",

showCancelButton: true,

confirmButtonColor: "#DD6B55",

confirmButtonText: "是的, 确定删除!",

cancelButtonText: "不, 取消",

closeOnConfirm: false,

closeOnCancel: false },

function(isConfirm){

if (isConfirm) {

var action = "pldelete";

$.ajax({

type : "post",

url : "MailBoxServlet",

datatype:'json',

data:{action:action,a:Math.random(),deleteidlist:checkedList.toString()},

success : function(data){

var d= eval('('+data+')');

if(d.biaozhi==true){

swal("删除!", "批量删除成功", "success");

$("input[name='deleteCusersid']").prop("checked",false);//将其他有对号的清除

$("input[name='qx']").prop("checked",false);//将全选的对号清除

$("#list").empty();

page1();

//window.location.reload();

}else{

swal("Deleted!", "删除失败", "error");

}

}

});

}

else {

swal("", "你已经取消的该操作 ", "error");

$("input[name='qx']").prop("checked",false);

$("input[name='deleteCusersid']").prop("checked",false);

}

});

}else{

swal("失败!", "你必须选择至少一行进行该操作!", "info");

}

}

function quanxuan(){//全选与全不选

if($("input[name='qx']").prop("checked")){

var checkbox = $("input[name='deleteCusersid']");

checkbox.prop("checked",true);

}else{

var checkbox = $("input[name='deleteCusersid']");

checkbox.prop("checked",false);

}

}

function addmail(){//写邮件

$("#btn_submit").click(function(){

var id = $("#menu_parent").val();

var zhuti = $("#zhuti").val();//获取主题

var content = $("#editor_id").val();//获取内容

if(zhuti==""||id==""){

if(zhuti==""){

swal("主题不能为空");

}else{

swal("收件人不能为空");

}

return false;

}else{

var action = "save";

$.ajax({

url: "MailBoxServlet",

data : 'json',

type : "post",

data :{action:action,id :id,content :content,zhuti :zhuti,a : Math.random()},

success : function(data){

if(data !=null){

var d= eval('('+data+')');

if(d.biaozhi){

swal("邮件编写成功");

}else{

swal("邮件编写失败");

}

}

$("#zhuti").val(""); //关闭的时候将所有的值制空

$("#setvalue").val("");

KindEditor.instances[0].html('');//专门的将textarea值置空0表示第一个KindEditor编辑器对象

$("#list").empty();//置空

page1();//异步刷新页面

}

});

}

//swal("关闭");

});

$("#btn_close").click(function(){

$("#zhuti").val(""); //关闭的时候将所有的值制空

$("#setvalue").val("");

KindEditor.instances[0].html('');//专门的将textarea值置空0表示第一个KindEditor编辑器对象

swal("关闭");

});

$("#send").click(function(){

swal("发送成功");

});

}

function initTree(){//初始化树

var action = "tree";

mydtree = new dTree('mydtree','${pageContext.request.contextPath}/style/default/images/dtree/','no','no');

mydtree.add(0,

-1,

"根目录",

"javascript:setvalue('0','根目录')",

"根目录",

"_self",

true);

$.ajax({

url: "MailBoxServlet",

data : 'json',

type : "post",

data :{action:action,a : Math.random()},

success : function(data){

if(data !=null){

$.each(eval("(" +data+ ")").treelist,function(index,item){

var id =item.nid;

var pid = item.parentId;

var nodesname = item.nodeName;

mydtree.add(id,pid,nodesname,"javascript:setvalue('"+id+"','"+nodesname+"')",nodesname,"_self",false);

});

//document.write(mydtree);

//将树添加到指定div(jQuery)

$("#treediv").html(mydtree.toString());

}

}

});

}

function shouwtree(){

$("#setvalue").click(function(){

$("#treediv").show();

});

}

function setvalue(id,name){

$("#setvalue").val(name);

$("#menu_parent").val(id);

$("#treediv").hide();

}

function page1(){

var pageNumber = 1;//默认初始页为第一页

var action = "page";//定义一个要进入的条件

$.ajax({//ajax请求

url: "MailBoxServlet",

data :'json',

type: "Post",

data:{action:action,pageNumber:pageNumber,a:Math.random()},//参数

success : function(data){//请求成功的方法

if(data !=null){

$.each(eval("(" + data + ")").mailbox, function (index, item) { //遍历返回的json

var html = "

m1 ="编辑";

m2="删除";

html2="

+""

+"

html+= html2;

$("#list").append(html);

});

var pageCount = eval("(" + data + ")").Page[0].totalPage; //取到pageCount的值(把返回数据转成object类型)

var currentPage = eval("(" + data + ")").Page[0].currentPage; //得到urrentPage

var options = {

bootstrapMajorVersion: 2, //版本

currentPage: currentPage, //当前页数

totalPages: pageCount, //总页数

//numberOfPages:10,

itemTexts: function (type, page, current) {

switch (type) {

case "first":

return "首页";

case "prev":

return "上一页";

case "next":

return "下一页";

case "last":

return "末页";

case "page":

return page;

}

},

onPageClicked: function (event, originalEvent, type, page) {

$("#list").empty();

$.ajax({

url: "MailBoxServlet?pageNumber=" + page,

type: "Post",

data:{action:"page",a:Math.random()},

success: function (data1) {

if (data1 != null) {

$.each(eval("(" + data1 + ")").mailbox, function (index, item) { //遍历返回的json

var html = "

m1 ="编辑";

m2="删除";

html2="

+""

+"

html+= html2;

$("#list").append(html);

});

}

}

});

}

};

$('#pageinfo').bootstrapPaginator(options);

}

}

});

}

以上所述是给大家介绍的BootStrap实现邮件列表的分页和模态框添加邮件的功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java JDK1.5、1.6、1.7新特性整理
下一篇:Bootstrap企业网站实战项目4
相关文章

 发表评论

暂时没有评论,来抢沙发吧~