public interface BlogMapper {
@Select("select * from article")
public ArrayList getAll();
}
如果想将sql语句抽到mapper文件中需要在
application.properties配置中添加
mybatis.mapper-locations=classpath:mapper/*.xml
并在mapper文件里通过
在mappe接口中通过@Mapper注解来映射。
@Mapper
public interface BlackEdmIdsMapper {
/**
* 查询总记录数
* @return
*/
int countSqlData();
}
org.springframework.boot
spring-boot-starter-thymeleaf
1.5.3.RELEASE
2.2: 在html语句中thymeleaf的语法
不可用
可用
返回列表
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j2
然后在
application.properties中添加配置
#log4j2配置文件
logging.config=classpath:log4j2.xml
@SpringBootApplication
@PropertySource(value={"file:xzs.properties"})//跟配置文件路径
public class JavaMessageCenterApplication {
public static void main(String[] args) {
SpringApplication.run(JavaMessageCenterApplication.class, args);
}
}
package com.example.messageCenter.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.example.messageCenter.entity.EdmSettingDao;
/**
* 邮件列表mapper
* @author xzs
*
*/
@Mapper
public interface EdmSettingMapper {
/**
* 查询总记录数
* @return
*/
int countSqlData();
/**
* 分页查询
* @param currentPage 查询页数
* @param pageDataCount 显示条数
* @return
*/
List pagingQuery(@Param("currentPage")int currentPage,@Param("pageDataCount")int pageDataCount);
/**
* 插入邮件数据
* @param emailDao
* @return
*/
int insertEmail(EdmSettingDao emailList);
/**
* 验证id是否存在
* @param emailDao
* @return
*/
int verificationId(@Param("id")int id);
/**
* 根据条件查询
* @param id
* @param descr
* @return
*/
List selectEmailIdOrEmailName(@Param("id")String id,@Param("descr")String descr);
/**
* 根据id查询
* @param id
* @return
*/
EdmSettingDao selectById(@Param("id")String id);
/**
* 修改
* @param emailList
* @return
*/
int updateEmail(EdmSettingDao emailList);
insert into edm_setting
(
id,
descr,
mail_title,
mail_body,
mail_from,
mail_to,
mail_cc,
mail_bcc,
biz_type,
edm_app_id,
status,
reply_to
)
VALUES (
#{id},
#{descr},
#{mailTitle},
#{mailBody},
#{mailFrom},
#{mailTo},
#{mailCc},
#{mailBcc},
#{bizType},
#{edmAppId},
#{status},
#{replyTo}
)
update edm_setting set
descr=#{descr},
mail_title=#{mailTitle},
mail_body=#{mailBody},
mail_from=#{mailFrom},
mail_to=#{mailTo},
mail_cc=#{mailCc},
mail_bcc=#{mailBcc},
reply_to=#{replyTo},
biz_type=#{bizType},
biz_type=null,
edm_app_id=#{edmAppId},
edm_app_id=null,
status=#{status},
status=null,
update_date=GETDATE()
where
id=#{id}
package com.example.messageCenter.service;
import java.util.List;
import com.example.messageCenter.dataResult.DataResult;
import com.example.messageCenter.entity.EdmSettingDao;
/**
* 邮件列表service
* @author xzs
*
*/
public interface EdmSettingService {
/**
* 总记录数
* @return
*/
int countSqlData();
/**
* 总页数
* @param sqlCount
* @return
*/
int returnCountPage();
/**
* 分页查询
* @param currentPage 查询页数
* @return
*/
List pagingQuery(int currentPage);
/**
* 插入邮件数据
* @param emailDao
* @return
*/
DataResult insertEmail(EdmSettingDao emailDao);
/**
* 根据条件查询
* @param id
* @param descr
* @return
*/
List selectEmailIdOrEmailName(String idStr,String descr);
/**
* 根据id查询
* @return
*/
EdmSettingDao selectById(String id);
/**
* 修改
* @param emailList
* @return
*/
DataResult updateEmail(EdmSettingDao emailList);
/**
* 验证id是否存在
* @param emailDao
* @return
*/
DataResult verificationId(String idStr);
}
package com.example.messageCenter.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.messageCenter.dataResult.DataResult;
import com.example.messageCenter.entity.SmsAppDao;
import com.example.messageCenter.entity.SmsGroupDao;
import com.example.messageCenter.entity.SmsSettingDao;
import com.example.messageCenter.mapper.SmsAppMapper;
import com.example.messageCenter.mapper.SmsGroupMapper;
import com.example.messageCenter.mapper.SmsSettingMapper;
import com.example.messageCenter.service.SmsSettingService;
import com.example.messageCenter.util.PageUtil;
@Service
public class EdmSettingServiceImpl implements SmsSettingService {
@Autowired
private SmsSettingMapper smsMaper;
@Autowired
private SmsGroupMapper smsGroup;
@Autowired
private SmsAppMapper smsApp;
@Override
public int countSqlData() {
int sqlCount = smsMaper.countSqlData();
return sqlCount;
}
@Override
public int returnCountPage() {
int sqlCount = countSqlData();
int pageCount = PageUtil.returnPageCount(sqlCount);
return pageCount;
}
@Override
public List pagingQuery(int currentPage) {
List pagingQuery = smsMaper.pagingQuery(currentPage, PageUtil.PAGEDATACOUNT);
return pagingQuery;
}
@Override
public DataResult insertSms(SmsSettingDao smsDao) {
DataResult data = new DataResult();
int id = smsDao.getSmsId();
if(smsMaper.verificationId(id)>0){//最好判断一下id是否为空
//说明该id已经存在
data.setIsSuccess(false);
data.setMessage("ID为:"+id+"数据已存在,请另外输入ID");
}else{
int insertSms = smsMaper.insertSmsSetting(smsDao);
if(insertSms>0){
data.setIsSuccess(true);
data.setMessage("短信添加成功");
}else{
data.setIsSuccess(false);
data.setMessage("短信添加失败");
}
}
return data;
}
@Override
public List selectSmsIdOrSmsName(String idStr, String descr) {
List list =null;
if((idStr==null||"".equals(idStr))&&(descr==null||"".equals(descr))){
list = smsMaper.pagingQuery(1, PageUtil.PAGEDATACOUNT);
}else{
try {
list = smsMaper.selectSmsIdOrSmsName(idStr, descr);
} catch (NumberFormatException e) {
e.printStackTrace();
}}
return list;
}
@Override
public SmsSettingDao selectById(String id) {
// 需要做一下id是否为数字的验证
return smsMaper.selectById(id);
}
@Override
public DataResult updateSms(SmsSettingDao smsDao) {
DataResult data = new DataResult();
int updateEmail = smsMaper.updateSms(smsDao);
if(updateEmail>0){
data.setIsSuccess(true);
data.setMessage("修改成功");
}else{
data.setIsSuccess(false);
data.setMessage("修改失败,请重新修改");
}
return data;
}
@Override
public DataResult verificationId(String idStr) {
DataResult data = new DataResult();
try {
int id = Integer.parseInt(idStr);
id = smsMaper.verificationId(id);
if(id>0){
data.setIsSuccess(true);
data.setMessage("已存在该ID数据");
}else{
data.setIsSuccess(false);
data.setMessage("不存在该ID数据");
}
} catch (NumberFormatException e) {
e.printStackTrace();
}
return data;
}
@Override
public List selectSmsAppAll() {
// TODO Auto-generated method stub
return smsApp.selectAllSmsApp();
}
@Override
public List selectSmsTypeAll() {
// TODO Auto-generated method stub
return smsGroup.selectAllSmsGroup();
}
}
package com.example.messageCenter.controller;
import java.util.HashMap;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.example.messageCenter.dataResult.DataResult;
import com.example.messageCenter.entity.EdmSettingDao;
import com.example.messageCenter.service.EdmSettingService;
import com.example.messageCenter.util.LoginUtil;
import com.example.messageCenter.util.PageUtil;
/**
* 邮件列表controller
* @author xzs
*
*/
@Controller
@RequestMapping("/email")
public class EdmSettingController {
@Autowired
private EdmSettingService emailList;
@RequestMapping("/emaillist")
public String toEmailList(HttpServletRequest httpRequest,HashMap map){
String currentPageStr = httpRequest.getParameter("currentPage");
int sqlDataCount = emailList.countSqlData();
int pageCount = emailList.returnCountPage();
int currentPage =1;//默认当前页为1
if(currentPageStr==null){
currentPage =1;
}else{
currentPage=PageUtil.pagingLogic(currentPageStr, pageCount);
}
boolean session = LoginUtil.getSession(httpRequest);
if(session){
List selectAllS = emailList.pagingQuery(currentPage);
map.put("currentPage", currentPage);
map.put("sqlDataCount", sqlDataCount);
map.put("pageCount", pageCount);
map.put("emailList", selectAllS);
return "/emaillist/index";
}else{//未登录
return "/public/login";
}
}
/**
* 跳转到添加邮件页面
* @param httpRequest
* @param map
* @return
*/
@RequestMapping("/addEmailPage")
public String addEmailPage(HttpServletRequest httpRequest,HashMap map){
boolean session = LoginUtil.getSession(httpRequest);
if(session){
return "/emaillist/add";
}else{//未登录
return "/public/login";
}
}
/**
* 添加邮件
* @param emailListDao
* @param httpRequest
* @return
*/
@RequestMapping(value = "/addEmail", method = RequestMethod.POST)
@ResponseBody
public DataResult addEmail(EdmSettingDao emailListDao,HttpServletRequest httpRequest){
DataResult insertEmail = new DataResult();
boolean session = LoginUtil.getSession(httpRequest);
if(session){
insertEmail = emailList.insertEmail(emailListDao);
//System.out.println(insertEmail);
return insertEmail;
}else{//未登录
insertEmail.setData(false);
insertEmail.setIsSuccess(false);
insertEmail.setMessage("请重新登录");
return insertEmail;
}
}
@RequestMapping("/selectEmail")
public String selectEmail(HttpServletRequest httpRequest,HashMap map){
String idStr = httpRequest.getParameter("id");
String descr = httpRequest.getParameter("descr");
boolean session = LoginUtil.getSession(httpRequest);
if(session){
List selectAllS = emailList.selectEmailIdOrEmailName(idStr, descr);
map.put("idStr", idStr);
map.put("descr", descr);
map.put("currentPage", 1);
map.put("sqlDataCount", selectAllS.size());
map.put("pageCount", 1);
map.put("emailList", selectAllS);
return "/emaillist/index";
}else{//未登录
return "/public/login";
}
}
/**
* 查看或修改
* @param httpRequest
* @param map
* @return
*/
@RequestMapping("/selectById")
public String selectById(HttpServletRequest httpRequest,HashMap map){
String idStr = httpRequest.getParameter("id");
String currentPage = httpRequest.getParameter("currentPage");
boolean session = LoginUtil.getSession(httpRequest);
if(session){
EdmSettingDao emailDao = emailList.selectById(idStr);
//System.out.println(emailDao.toString());
//把当前页传递过去,返回列表时好定位
map.put("currentPage", currentPage);
map.put("emailDao", emailDao);
return "/emaillist/edit";
}else{//未登录
return "/public/login";
}
}
/**
* 添加邮件
* @param emailListDao
* @param httpRequest
* @return
*/
@RequestMapping(value = "/updateEmail", method = RequestMethod.POST)
@ResponseBody
public DataResult updateEmail(EdmSettingDao emailListDao,HttpServletRequest httpRequest){
DataResult insertEmail = new DataResult();
boolean session = LoginUtil.getSession(httpRequest);
if(session){
//System.out.println("修改:"+emailListDao);
insertEmail = emailList.updateEmail(emailListDao);
return insertEmail;
}else{//未登录
insertEmail.setData(false);
insertEmail.setIsSuccess(false);
insertEmail.setMessage("请重新登录");
return insertEmail;
}
}
/**
* 添加邮件
* @param emailListDao
* @param httpRequest
* @return
*/
@RequestMapping(value = "/verificationId")
@ResponseBody
public DataResult verificationId(HttpServletRequest httpRequest){
DataResult insertEmail = new DataResult();
boolean session = LoginUtil.getSession(httpRequest);
if(session){
//System.out.println("修改:"+emailListDao);
String idStr = httpRequest.getParameter("id");
System.out.println("idStr="+idStr);
insertEmail = emailList.verificationId(idStr);
System.out.println(insertEmail.toString());
return insertEmail;
}else{//未登录
insertEmail.setData(false);
insertEmail.setIsSuccess(false);
insertEmail.setMessage("请重新登录");
return insertEmail;
}
}
}