[개발 노트] Spring boot + boottstrap + MySQL + Hadoop 빅 데이터 분석 시스템 구축
7409 단어 개발 노트
요청:
//iframe js
function SetWinHeight(obj){
var win=obj;
if (document.getElementById){
if (win && !window.opera){
if (win.contentDocument && win.contentDocument.body.offsetHeight){
win.height = win.contentDocument.body.offsetHeight;
// width ,
//win.width = win.contentDocument.body.offsetWidth;
}
else if(win.Document && win.Document.body.scrollHeight){
win.height = win.Document.body.scrollHeight;
// width ,
//win.width = win.Document.body.scrollWidth;
}
}
}
}
// ,iframe
window.onresize=function(){
SetWinHeight();
}
$(function(){
SetWinHeight();
});
개인 정보 수정
2. jQuery 에서 ajax 의 post 가 404 가 나 타 났 습 니 다.
대신 설명 참조:https://zhidao.baidu.com/question/442974647.html
1. 404 오류 가 발생 한 링크 를 기록 합 니 다.2. 서버 에서 '오류' 가 발생 한 링크 의 내용 을 직접 출력 하여 가능 한 지 확인 합 니 다.3. 만약 에 안 된다 면 링크 에 문제 가 있다 는 것 을 의미한다.가능 하 다 면 jq 가 보 낸 post 요청 을 확인 하고 인자 가 전의 되 었 는 지 확인 하 십시오.4. 위 에 도 문제 가 없다 면 서버 연결 에 문제 가 있 고 불안정 하 다 는 것 입 니 다.
자신의 백 스테이지 함수 가 맞지 않 은 것 을 발견 하 다.
3. eclipse 는 어떤 가방 을 컴 파일 하지 않 습 니 다.
왠 지 모 르 게 제 eclipse 는 그 중의 한 가방 을 컴 파일 하지 않 고 다른 가방 은 컴 파일 하지 않 습 니 다. 그런데 이것 은 컴 파일 하지 않 습 니 다. Problem 신문 The tag handler class for "pager" (common. util. pager. PagerTag) was not found on the Java Build Path。
해결: 이 가방 에서 Build Path → Include 를 우 클릭 합 니 다.
P. S. 이 건 어 리 석 은 잘못 일 거 야.
사소한 문제
주의:
1. jpa 로 시 계 를 만 들 때 필드 이름 에 대문자 가 나 오지 마 세 요. 밑줄 이 나 오지 마 세 요. 그렇지 않 으 면 귀 찮 습 니 다.
2. 주해 의 정확 함 에 주의
전에 문제 가 하나 생 겼 습 니 다.
***************************
APPLICATION FAILED TO START
***************************
Description:
Field xxxRepository in xxxxxx.service.impl.IdentityServiceImpl required a bean of type 'package.xxxRepository' that could not be found.
Action:
Consider defining a bean of type 'package.xxxRepository' in your configuration.
해결책 은:
/**
*
*/
@Service("identityService") // bean
@Transactional(readOnly=true)
public class IdentityServiceImpl implements IdentityService {
// session
/** Repository */
@Autowired // bytype
@Qualifier("xxxRepository") // byName
private XxxRepository xxxRepository;
/**
* @Qualifier repository
*/
3. Spring 에서 Controller 에서 전 달 된 인삼 은 나중에 값 을 추출 할 때 직접 전 달 된 매개 변수의 이름 을 사용 하지 않 는 것 이 좋 습 니 다. 그렇지 않 으 면 오류 가 발생 할 수 있 습 니 다.
이전에 쓴 @ RequestParam ("start") String start 와 같이 이때 start 라 는 변수의 값 은 정 해 져 있 더 라 도 나중에 바 꾸 면 문제 가 발생 하기 쉬 우 므 로 후속 코드 를 사용 할 때 start 라 는 변수 이름 을 사용 하지 않 는 것 이 좋 습 니 다. 새 매개 변 수 를 만 들 고 전 참 을 수정 할 수 있 습 니 다. 나중에 service 에서 의 방법 으로 전 참 될 때 start 를 사용 하지 않 는 것 이 좋 습 니 다.
4. 오류 보고 연결 은 읽 기 전용 입 니 다. 데이터 수정 으로 이어지는 쿼 리 는 허용 되 지 않 습 니 다.
서비스 구현 클래스 에 @ Transactional (readOnly = true) 주 해 를 붙 였 기 때 문 입 니 다. 주 해 를 @ Transactional (readOnly = false, rollback For = java. lang. Runtime Exception. class) 로 수정 한 후에 해결 합 니 다.
5. Mysql 의 저장 시간 과 페이지 에서 읽 는 시간 이 일치 하지 않 습 니 다.
참고:https://blog.csdn.net/q283614346/article/details/90737288내 server Timezone 이 UTC 시간 을 쓴 것 을 발견 했다.
5. Spring boot 통합 Hadoop, 원 격 실행 mapreduce 방법 jar 패키지
1. 먼저 pom 파일 수정
org.springframework.data
spring-data-hadoop
2.5.0.RELEASE
org.slf4j
slf4j-log4j12
org.springframework.boot
spring-boot-starter-web
ch.qos.logback
logback-classic
jdk.tools
jdk.tools
1.8
system
${JAVA_HOME}/lib/tools.jar
2. 방법 jar 패 키 지 를 spring 의 class path 디 렉 터 리 에 두 었 습 니 다. 예 를 들 어 src / main / resources 에 두 었 습 니 다.
3. application - context. xml 파일 을 추가 합 니 다. hadop 과 호출 방법 을 연결 하 는 코드 입 니 다.
fs.defaultFS=hdfs://xxx.xxx.xxx.xxx:9000
4. hadopcontroller 를 추가 하고 상기 방법 패 키 지 를 실행 하 는 코드 를 작성 합 니 다.
package org.fkit.simplespringdatajpatest.controller;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@ResponseBody
@RequestMapping("/hadoop")
public class hadoopController {
private static final Log log = LogFactory.getLog(hadoopController.class);
@RequestMapping(value="/test")
public static String Test(String[] args){
try{
@SuppressWarnings("resource")
AbstractApplicationContext context = new ClassPathXmlApplicationContext(
"/application-context.xml", hadoopController.class);
log.info("xxx with HDFS copy Application Running");
context.registerShutdownHook();
}catch(Exception e){
e.printStackTrace();
}
return " "; // , @ResponseBody
}
}
5. 페이지 접근http://localhost:8080/hadoop/test실행 중인 로그 출력 은 eclipse 콘 솔 에 있 으 며, 실행 이 완료 되면 웹 페이지 에 '실행 성공' 을 표시 합 니 다.
미 완성 계속...