第六节 案例
1、准备工作
①创建实体类
public class Movie {
private String movieId;<br /> private String movieName;<br /> private Double moviePrice;<br /> ……
②创建Service
[1]接口
public interface MovieService {
List<Movie> getAll();
Movie getMovieById(String movieId);
void saveMovie(Movie movie);
void updateMovie(Movie movie);
void removeMovieById(String movieId);
}
[2]接口的实现类
@Service
public class MovieServiceImpl implements MovieService {
private static Map<String ,Movie> movieMap;
static {
movieMap = new HashMap<>();
String movieId = null;<br /> Movie movie = null;
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "肖申克救赎", 10.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "泰坦尼克号", 20.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "审死官", 30.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "大话西游之大圣娶亲", 40.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "大话西游之仙履奇缘", 50.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "功夫", 60.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "大内密探凌凌漆", 70.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "食神", 80.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "西游降魔篇", 90.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "西游伏妖篇", 11.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "三傻大闹宝莱坞", 12.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "唐人街探案", 13.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "一个人的武林", 14.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "罗马假日", 15.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "花季雨季", 16.0);<br /> movieMap.put(movieId, movie);
movieId = UUID.randomUUID().toString().replace("-", "").toUpperCase();<br /> movie = new Movie(movieId, "夏洛特烦恼", 17.0);<br /> movieMap.put(movieId, movie);<br /> }
@Override<br /> public List<Movie> getAll() {<br /> return new ArrayList<>(movieMap.values());<br /> }
@Override<br /> public Movie getMovieById(String movieId) {<br /> return movieMap.get(movieId);<br /> }
@Override<br /> public void saveMovie(Movie movie) {<br /> String movieId = UUID.randomUUID().toString().replace("-", "");
movie.setMovieId(movieId);
movieMap.put(movieId, movie);<br /> }
@Override<br /> public void updateMovie(Movie movie) {
String movieId = movie.getMovieId();
movieMap.put(movieId, movie);
}
@Override<br /> public void removeMovieById(String movieId) {<br /> movieMap.remove(movieId);<br /> }<br />}
③测试Service
@SpringJUnitConfig(locations = {“classpath:spring-mvc.xml”})
public class MovieTest {
@Autowired<br /> private MovieService movieService;
@Test<br /> public void testServiceGetAll() {<br /> List<Movie> list = movieService.getAll();<br /> for (Movie movie : list) {<br /> System.out.println("movie = " + movie);<br /> }<br /> }
@Test<br /> public void testServiceGetById() {<br /> List<Movie> movieList = movieService.getAll();<br /> for (Movie movie : movieList) {<br /> String movieId = movie.getMovieId();<br /> Movie movieById = movieService.getMovieById(movieId);<br /> System.out.println("movieById = " + movieById);<br /> }<br /> }
@Test<br /> public void testGetOne() {<br /> Movie movie = movieService.getMovieById("178E6B0B0DA14DC59141E06FFA620673");<br /> System.out.println("movie = " + movie);<br /> }
@Test<br /> public void testServiceRemoveById() {<br /> List<Movie> movieList = movieService.getAll();<br /> for (Movie movie : movieList) {<br /> String movieId = movie.getMovieId();<br /> movieService.removeMovieById(movieId);<br /> }
movieList = movieService.getAll();<br /> for (Movie movie : movieList) {<br /> System.out.println("movie = " + movie);<br /> }<br /> }
@Test<br /> public void testServiceSave() {<br /> movieService.saveMovie(new Movie(null, "aa", 111.11));
List<Movie> all = movieService.getAll();<br /> for (Movie movie : all) {<br /> System.out.println("movie = " + movie);<br /> }<br /> }
@Test<br /> public void testServiceUpdate() {<br /> List<Movie> all = movieService.getAll();<br /> for (Movie movie : all) {<br /> String movieId = movie.getMovieId();<br /> String movieName = movie.getMovieName() + "~";
Movie movieNew = new Movie(movieId, movieName, movie.getMoviePrice());<br /> movieService.updateMovie(movieNew);<br /> }
List<Movie> movieList = movieService.getAll();<br /> for (Movie movie : movieList) {<br /> System.out.println("movie = " + movie);<br /> }<br /> }
}
2、搭建环境
①引入依赖
②加入配置文件
[1]web.xml
[2]日志配置文件
<?xml version=”1.0” encoding=”UTF-8”?>
<!-- 设置全局日志级别。日志级别按顺序分别是:DEBUG、INFO、WARN、ERROR --><br /> <!-- 指定任何一个日志级别都只打印当前级别和后面级别的日志。 --><br /> <root level="INFO"><br /> <!-- 指定打印日志的appender,这里通过“STDOUT”引用了前面配置的appender --><br /> <appender-ref ref="STDOUT" /><br /> </root>
<!-- 根据特殊需求指定局部日志级别 --><br /> <logger name="org.springframework.web.servlet.DispatcherServlet" level="DEBUG" />
[3]SpringMVC 配置文件