初涉SpringBoot— 消息系统项目总结

这个项目是本人接触的第一个springboot项目,之前也没有系统的学习过,好在有我的同事师傅的指点,才能顺利完成。

 首先这个项目的技术构成springboot+sqlservice+ Thymeleaf  项目的结构如下
                                              
编写整个项目时遇到过如下问题
1:如何将sql语句写到mapper文件中
      springboot默认的在数据库访问的接口类方法上写sql语句如
public interface BlogMapper {

	@Select("select * from article")
	public ArrayList<BlogEntity> getAll();
}
如果想将sql语句抽到mapper文件中需要在 application.properties配置中添加
mybatis.mapper-locations=classpath:mapper/*.xml

并在mapper文件里通过
<mapper namespace="mapper对应的接口路径">
在mappe接口中通过@Mapper注解来映射。
@Mapper
public interface BlackEdmIdsMapper {
	/**
	  * 查询总记录数
	  * @return
	  */
	 int countSqlData();
}



2:对thymeleaf模版语法的使用
   2.1: 在springboot项目中如要使用thymeleaf模版需要在pom文件中加
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-thymeleaf</artifactId>
			<version>1.5.3.RELEASE</version>
		</dependency>
   2.2: 在html语句中thymeleaf的语法
      2.2.1 读取后台传的单个对象 使用th:text或者th:value
      <span th:text="${object.name}"></span>  
   
      2.2.2 读取后台传的集合列表
<tr th:each="email,emailStat : ${emailList}">
			<td th:text="${emailStat.index+1}"></td>
			<td th:text="${email.id}"></td>
			<td th:text="${email.descr}"></td>
			<td th:text="${email.mailFrom}"></td>
			<td th:text="${email.mailTo}"></td>
			<td th:text="${email.mailTitle}"></td>
			<td th:text="${email.replyTo}"></td>
</tr>	
 
      2.2.3  switch-case语句
			<td th:switch="${email.status}">
				<p th:case="'N'" style="color: red;">不可用</p>
				<p th:case="'Y'" style="color: green;">可用</p>
			</td>

      2.2.4  thymeleaf语句动态生存select
<select id="sms_app_id" name="smsAppId">
		<option th:each="e,eStat:${smsAppAll}" th:value="${e.smsAppId}" th:text=" ${e.smsAppName}" >
                       
                   </option>
</select>

      2.2.5 select option动态匹配选中选中
<option th:each="e,eStat:${smsAppAll}" th:selected="(${e.smsAppId} == ${smsDao.smsAppId})" th:value="${e.smsAppId}" th:text=" ${e.smsAppName}" >

      2.2.6  a标签如何使用thymeleaf
   <a class="btn btn-success"  href="#" th:href="@{/sms/smslist(currentPage=${currentPage})}">返回列表</a>

2.2.6  js如何使用thymeleaf 需添加 th:inline="javascript"
<script type="text/javascript" th:inline="javascript">
    BUI.use('common/main',function(){
      
        var config =$.parseJSON('['+[[${json}]]+']');
        });
        	
  </script>


3:如何添加日志文件,这个项目采用的是log4j2
        首先要在pom文件中添加依赖包
<!-- 添加spring-boot-starter-log4j2的依赖包 -->
<!-- day04 使用log4j2添加包,此时版本是log4j 2.6.2 -->
    <dependency> <!-- exclude掉spring-boot的默认log配置 -->  
        <groupId>org.springframework.boot</groupId>  
        <artifactId>spring-boot-starter</artifactId>  
        <exclusions>  
            <exclusion>  
                <groupId>org.springframework.boot</groupId>  
                <artifactId>spring-boot-starter-logging</artifactId>  
            </exclusion>  
        </exclusions>  
    </dependency>  
	<dependency> <!-- 引入log4j2依赖 -->  
        <groupId>org.springframework.boot</groupId>  
        <artifactId>spring-boot-starter-log4j2</artifactId>  
    </dependency>  	
 然后在application.properties中添加配置
#log4j2配置文件
logging.config=classpath:log4j2.xml

然后在classpath路径下添加log4j2.xml文件。这个网上一大堆,我也是从网上找的
<?xml version="1.0" encoding="UTF-8"?>
<!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
<!--Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出-->
<!--monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数-->
<configuration status="WARN" monitorInterval="30">
    <!--先定义所有的appender-->
    <appenders>
    <!--这个输出控制台的配置-->
        <console name="Console" target="SYSTEM_OUT">
        <!--输出日志的格式-->
            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
        </console>
    <!--文件会打印出所有信息,这个log每次运行程序会自动清空,由append属性决定,这个也挺有用的,适合临时测试用-->
<!--     <File name="log" fileName="log/test.log" append="false">
       <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>
    </File> -->
    <!-- 这个会打印出所有的info及以下级别的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档-->
        <RollingFile name="RollingFileInfo" fileName="logs/info.log"
                     filePattern="logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log">
            <!--控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)-->        
            <ThresholdFilter level="info" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy/>
                <SizeBasedTriggeringPolicy size="100 MB"/>
            </Policies>
        </RollingFile>
        <RollingFile name="RollingFileWarn" fileName="logs/warn.log"
                     filePattern="logs/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log">
            <ThresholdFilter level="warn" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy/>
                <SizeBasedTriggeringPolicy size="100 MB"/>
            </Policies>
        <!-- DefaultRolloverStrategy属性如不设置,则默认为最多同一文件夹下7个文件,这里设置了20 -->
            <DefaultRolloverStrategy max="20"/>
        </RollingFile>
        <RollingFile name="RollingFileError" fileName="logs/error.log"
                     filePattern="logs/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log">
            <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>
            <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
            <Policies>
                <TimeBasedTriggeringPolicy/>
                <SizeBasedTriggeringPolicy size="100 MB"/>
            </Policies>
        </RollingFile>
    </appenders>
    <!--然后定义logger,只有定义了logger并引入的appender,appender才会生效-->
    <loggers>
        <!--过滤掉spring和mybatis的一些无用的DEBUG信息-->
        <logger name="org.springframework" level="INFO"></logger>
        <logger name="org.mybatis" level="INFO"></logger>
        <root level="all">
            <appender-ref ref="Console"/>
            <appender-ref ref="RollingFileInfo"/>
            <appender-ref ref="RollingFileWarn"/>
            <appender-ref ref="RollingFileError"/>
        </root>
    </loggers>
</configuration>

4:项目在打包运行后如何将配置文件拿到jar外方便对数据库连接进行修改
数据库连接字符串是写在application.properties 把它抽出来(更改为了xzs.properties)方便打包时更改数据库连接。(抽出application.properties有很多种方法详见点击打开链接)我用的是在启动类通过@PropertySource加载
@SpringBootApplication
@PropertySource(value={"file:xzs.properties"})//跟配置文件路径
public class JavaMessageCenterApplication {

	public static void main(String[] args) {
		SpringApplication.run(JavaMessageCenterApplication.class, args);
	}
}
 

在代码方面需要注意的是对页面传值合法性的判断,对异常的try catch
下面是从mapper到controller的代码
mapper
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<EdmSettingDao> 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<EdmSettingDao> 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);
 

mapper.xml
<?xml version="1.0" encoding="UTF-8" ?>  
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.messageCenter.mapper.EdmSettingMapper">




	

	<!-- 查询总条数 -->
	<select id="countSqlData" resultType="int">
		select count(id) from
		edm_setting(nolock)
	</select>

	<!-- 验证id是否存在 -->
	<select id="verificationId" parameterType="int" resultType="int">
		select count(id) from dbo.edm_setting where id=#{id}
	</select>

	<!-- 分页查询 -->
	<select id="pagingQuery" parameterType="map"
		resultType="com.example.messageCenter.entity.EdmSettingDao">
		select
		id,descr,mail_from,mail_to,mail_title,reply_to,status from
		edm_setting(nolock) ORDER BY update_date DESC OFFSET
		(#{currentPage}-1)*#{pageDataCount} ROWS FETCH NEXT #{pageDataCount}
		ROW ONLY
	</select>

	<insert id="insertEmail" parameterType="com.example.messageCenter.entity.EdmSettingDao">
		insert into edm_setting
		(
		id,
		descr,
		mail_title,
		mail_body,
		mail_from,
		mail_to,
		mail_cc,
		mail_bcc,
		<if test="bizType !=null and bizType!=''">
			biz_type,
		</if>
		<if test="edmAppId !=null and edmAppId!=''">
			edm_app_id,
		</if>
		<if test="status !=null and status=''">
			status,
		</if>
		reply_to

		)
		VALUES (

		#{id},
		#{descr},
		#{mailTitle},
		#{mailBody},
		#{mailFrom},
		#{mailTo},
		#{mailCc},
		#{mailBcc},
		<if test="bizType !=null and bizType!=''">
			#{bizType},
		</if>
		<if test="edmAppId !=null and edmAppId!=''">
			#{edmAppId},
		</if>
		<if test="status !=null and status=''">
			#{status},
		</if>
		#{replyTo}

		)
	</insert>
	<!-- 根据搜索条件查询设备 -->
	<select id="selectEmailIdOrEmailName" parameterType="map"
		resultType="com.example.messageCenter.entity.EdmSettingDao">
		SELECT id,descr,mail_from,mail_to,mail_title,reply_to,status from
		edm_setting(nolock)
		WHERE 1=1
		<if test="id !=null and id!=''">
			AND id=#{id}
		</if>
		<if test="descr !=null and descr!=''">
			AND descr like CONCAT(CONCAT('%', #{descr}), '%')
		</if>
		ORDER BY update_date DESC
	</select>


	<!-- 根据ID查询 -->
	<select id="selectById" parameterType="map"
		resultType="com.example.messageCenter.entity.EdmSettingDao">
		SELECT
		id,descr,mail_title,mail_body,mail_from,mail_to,mail_cc,mail_bcc,reply_to,biz_type,edm_app_id,status
		from edm_setting(nolock)
		WHERE id=#{id}
	</select>

	<update id="updateEmail" parameterType="com.example.messageCenter.entity.EdmSettingDao">
		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},
		<if test="bizType !=null and bizType!=''">
			biz_type=#{bizType},
		</if>
		<if test="bizType==''">
			biz_type=null,
		</if>
		<if test="edmAppId !=null and edmAppId!=''">
			edm_app_id=#{edmAppId},
		</if>
		<if test=" edmAppId==''">
			edm_app_id=null,
		</if>
		<if test="status !=null and status!=''">
			status=#{status},
		</if>
		<if test="status==''">
			status=null,
		</if>
		update_date=GETDATE()
		where
		id=#{id}
	</update>

</mapper>


service interface
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<EdmSettingDao> pagingQuery(int currentPage);
	 
	 /**
	  * 插入邮件数据
	  * @param emailDao
	  * @return
	  */
	 DataResult insertEmail(EdmSettingDao emailDao);
	 
	 /**
	  * 根据条件查询
	  * @param id
	  * @param descr
	  * @return
	  */
	 List<EdmSettingDao> 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);
	 
	 
}

service impl
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<SmsSettingDao> pagingQuery(int currentPage) {
		List<SmsSettingDao> 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<SmsSettingDao> selectSmsIdOrSmsName(String idStr, String descr) {
		
		List<SmsSettingDao> 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<SmsAppDao> selectSmsAppAll() {
		// TODO Auto-generated method stub
		return smsApp.selectAllSmsApp();
	}

	@Override
	public List<SmsGroupDao> selectSmsTypeAll() {
		// TODO Auto-generated method stub
		return smsGroup.selectAllSmsGroup();
	}
	

}

controller
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<String, Object> 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<EdmSettingDao> 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<String, Object> 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<String, Object> map){
		String idStr = httpRequest.getParameter("id");
		String descr = httpRequest.getParameter("descr");
		

		
		boolean session = LoginUtil.getSession(httpRequest);
		if(session){
			List<EdmSettingDao> 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<String, Object> 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;
		}
	
		
	}
	
	
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值